home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 090 / cshlgr.arc / CSHLGR.DOC < prev    next >
Encoding:
Text File  |  1986-04-11  |  159.4 KB  |  4,422 lines

  1.  
  2.  
  3.  
  4.  
  5.                      The CashFlow Ledger (tm), Version 1.0
  6.                            by Patrick T. Magee, CPA
  7.  
  8.                                     PREFACE
  9.  
  10.         (C) Copyright 1985 by Altair Systems.  All Rights Reserved.
  11.  
  12.  
  13.         The CashFlow Ledger is a macro-driven Lotus 1-2-3 template
  14.         (Symphony version also available) that integrates a simplified
  15.         short term cash flow management system, with a simplified
  16.         general ledger system.  All macro routines in this template
  17.         revolve around a single transaction database which can hold
  18.         over 1600 transactions per time period, and over 100
  19.         different account numbers, on a 256k computer.  The CashFlow
  20.         Ledger is being marketed using the shareware method as
  21.         described below.  Consequently, this disk contains the
  22.         complete application and manual.
  23.  
  24.  
  25.         I'll Pay You to Copy The CashFlow Ledger
  26.  
  27.            You are free to share unmodified copies of The CashFlow Ledger
  28.            and this documentation with others.
  29.  
  30.            Should you find this application useful and wish to support this
  31.            work, you may register a copy for $75 and receive the following:
  32.  
  33.               A $25 commission every time someone else registers a copy of
  34.               your registered diskette.
  35.  
  36.               A printed typeset copy of the manual
  37.  
  38.               Free copy of the next major release of The CashFlow Ledger
  39.  
  40.               Phone Support
  41.  
  42.  
  43.         To register, fill out the registration form contained in the
  44.         file, REGISTER.PRN, and send it along with $75 to:
  45.  
  46.  
  47.             Altair Systems
  48.             1711 - 143rd Place SE, Suite C1
  49.             Bellevue, WA  98007
  50.  
  51.         (Washington State residents please add sales tax.)
  52.  
  53.     Please do not use this address after 9/1/86 (with emphasis on the 86).
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.    About the Author
  73.  
  74.    Patrick Magee is a CPA based in Bellevue, WA specializing in the
  75.    application of Lotus 1-2-3 and Symphony to business problems.  He
  76.    acquired his Lotus knowledge by helping over 40 businesses implement
  77.    Lotus products and has over 500 hours experience teaching others how to
  78.    use them.  He writes a monthly column for Absolute Reference - The
  79.    Journal for 1-2-3 and Symphony Users (1-800-227-7999).  He is also the
  80.    founder and president of the Pacific NW Lotus Users Group.
  81.  
  82.  
  83.    DISCLAIMER
  84.  
  85.    THE CASHFLOW LEDGER IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
  86.    EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED
  87.    WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  88.  
  89.    THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE CASHFLOW LEDGER
  90.    IS WITH YOU.  YOU ASSUME THE RESPONSIBILITY FOR THE SELECTION OF THE
  91.    CASHFLOW LEDGER TO ACHIEVE A PARTICULAR RESULT YOU DESIRE, AND FOR THE
  92.    INSTALLATION, USE, AND RESULTS OF OPERATING THE CASHFLOW LEDGER.
  93.  
  94.    IN NO EVENT WILL PATRICK MAGEE OR ALTAIR SYSTEMS BE LIABLE TO YOU FOR
  95.    ANY DAMAGES, INCLUDING ANY LOST PROFITS, LOST SAVINGS, OR OTHER
  96.    INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF OR
  97.    INABILITY TO USE THE CASHFLOW LEDGER, EVEN IF PATRICK MAGEE OR ALTAIR
  98.    SYSTEMS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, OR FOR ANY
  99.    CLAIM BY ANY OTHER PARTY.
  100.  
  101.  
  102.    TRADEMARK NOTICES
  103.  
  104.    Lotus 1-2-3 is a trademark of Lotus Development Corporation
  105.  
  106.    CashFlow Ledger is a trademark of Altair Systems
  107.  
  108.  
  109.    DEDICATION
  110.  
  111.    The CashFlow Ledger is dedicated to my Grandmother, Thelma Magee, for
  112.    her faith, and for the first time so long ago that she said to me,
  113.    "You write so well".
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.                              Table of Contents
  139.  
  140.  
  141.    Chapter 1 - Introduction ............................................. 1
  142.  
  143.         Purpose ......................................................... 1
  144.         Background on The CashFlow Ledger ............................... 1
  145.         Warning to Beginning Lotus 1-2-3 Users .......................... 1
  146.         Guide to Using the Rest of the Manual ........................... 2
  147.         Getting Started ................................................. 2
  148.  
  149.    Chapter 2 - Introductory Tutorial .................................... 5
  150.  
  151.         Purpose ......................................................... 5
  152.         Getting Started ................................................. 5
  153.         Entering a Transaction .......................................... 6
  154.         Sorting the Database ............................................ 6
  155.         Viewing the Modify Help Screens ................................. 7
  156.         The Query Data Options .......................................... 7
  157.         The Summarize Options ........................................... 8
  158.         Printing Summary Reports ........................................ 8
  159.         The Cash Flow Summary Options ................................... 8
  160.  
  161.    Chapter 3 - Setting up The CashFlow Ledger .......................... 10
  162.  
  163.         Purpose ........................................................ 10
  164.         Loading ........................................................ 10
  165.         Initializing ................................................... 10
  166.         Is it Cash Flow or Ledger ...................................... 11
  167.         Maintaining Multiple Ledgers ................................... 11
  168.         Entering Transactions .......................................... 11
  169.  
  170.            The Current Year and Month .................................. 12
  171.            The Alt-A Macro ............................................. 12
  172.            Other Alt-Letter Commands ................................... 12
  173.            Recalculation Method ........................................ 12
  174.  
  175.         Recurring Transactions ......................................... 15
  176.  
  177.    Chapter 4 - Reference Section ....................................... 15
  178.  
  179.      1 Modify Options .................................................. 15
  180.  
  181.        1.1 Add/Edit .................................................... 15
  182.        1.2 Sort ........................................................ 18
  183.        1.3 Balance ..................................................... 18
  184.        1.4 Date ........................................................ 19
  185.        1.5 Print ....................................................... 19
  186.        1.6 File ........................................................ 19
  187.  
  188.            1.6.1 Xtract ................................................ 19
  189.            1.6.2 Retrieve .............................................. 19
  190.            1.6.3 Quit .................................................. 20
  191.  
  192.        1.7 Help ........................................................ 20
  193.        1.8 Quit ........................................................ 20
  194.  
  195.      2 Query Options ................................................... 20
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.        2.1 Account ..................................................... 21
  204.        2.2 Date_Range .................................................. 21
  205.        2.3 Both ........................................................ 21
  206.        2.4 Freeform .................................................... 21
  207.        2.5 Scan ........................................................ 22
  208.        2.6 Print ....................................................... 22
  209.        2.7 Help ........................................................ 22
  210.        2.8 Quit ........................................................ 22
  211.  
  212.      3 Summarize Options ............................................... 22
  213.  
  214.        3.1 All ......................................................... 22
  215.        3.2 Date_Range .................................................. 23
  216.        3.3 Xtract ...................................................... 23
  217.        3.4 Scan ........................................................ 23
  218.        3.5 Print ....................................................... 24
  219.  
  220.            3.5.1 Summary ............................................... 24
  221.            3.5.2 Account ............................................... 24
  222.            3.5.3 Date_Range ............................................ 24
  223.            3.5.4 Quit .................................................. 24
  224.  
  225.        3.6 Help ........................................................ 24
  226.        3.7 Quit ........................................................ 25
  227.  
  228.      4 Cash Flow Summary Options ....................................... 25
  229.  
  230.        4.1 Calculate ................................................... 25
  231.        4.2 Graph ....................................................... 25
  232.  
  233.            4.2.1 Cash_Flow ............................................. 25
  234.            4.2.2 Daily_Balance ......................................... 25
  235.            4.2.3 Save .................................................. 26
  236.            4.2.4 Quit .................................................. 26
  237.  
  238.        4.3 Date ........................................................ 26
  239.        4.4 Scan  ....................................................... 26
  240.        4.5 Print ....................................................... 26
  241.        4.6 Help ........................................................ 26
  242.        4.7 Quit ........................................................ 26
  243.  
  244.      5 Setup Options ................................................... 26
  245.  
  246.        5.1 Recur_Trans ................................................. 27
  247.  
  248.            5.1.1 Add/Edit .............................................. 27
  249.            5.1.2 Print ................................................. 28
  250.            5.1.3 Help .................................................. 28
  251.            5.1.4 Quit .................................................. 28
  252.  
  253.        5.2 Date ........................................................ 28
  254.        5.3 Init ........................................................ 28
  255.        5.4 Formfix ..................................................... 28
  256.        5.5 EraseHelp ................................................... 28
  257.        5.6 X/C ......................................................... 29
  258.  
  259.            5.6.1 Expand_Query .......................................... 29
  260.            5.6.2 Expand_Summary ........................................ 29
  261.            5.6.3 Contract_Query ........................................ 29
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.            5.6.4 Contract_Summary ...................................... 30
  269.            5.6.5 Quit .................................................. 30
  270.  
  271.        5.7 Help ........................................................ 30
  272.        5.8 Quit ........................................................ 30
  273.  
  274.      6 On-line Help .................................................... 30
  275.  
  276.      7 Save Options .................................................... 30
  277.  
  278.        7.1 Save ........................................................ 31
  279.        7.2 Directory ................................................... 31
  280.        7.3 Quit ........................................................ 31
  281.  
  282.  
  283.    Appendices .......................................................... 32
  284.  
  285.         A - Listing of Alt-Letter Macros ............................... 32
  286.         B - Range Name Listing ......................................... 35
  287.         C - Summary of Reporting Options ............................... 37
  288.         D - Building the Acccount Summary Macro Routines ............... 41
  289.         E - Building the Cash FlowSummary Routines .................... 51
  290.         F - Trouble Shooting ........................................... 62
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.    Chapter 1
  334.  
  335.    Introduction
  336.  
  337.  
  338.    PURPOSE
  339.  
  340.    This chapter was designed to be your guide to the rest of this manual.
  341.    It explains the purpose of each section and suggests some possible ways
  342.    of using them.  This chapter is organized as follows:
  343.  
  344.     - Background on the Product
  345.  
  346.     - Warning to Beginning Lotus 1-2-3 users
  347.  
  348.     - Guidelines to using the rest of the manual
  349.  
  350.     - Getting Started
  351.  
  352.  
  353.    BACKGROUND ON THE CASHFLOW LEDGER
  354.  
  355.    Two fundamental problems faced by all businesses are managing short term
  356.    cash flow and maintaining ledgers of some kind.  In November of 1983, I
  357.    published "CashFlow For 1-2-3", a Lotus 1-2-3 template for managing
  358.    short term cash flow.  It wasn't real hard to tell that this was a
  359.    fundamental problem.  I had just started my own business, and I had a
  360.    "fundamental" problem with my cash flow.  CashFlow For 1-2-3 was the
  361.    tool I developed to squeak by.
  362.  
  363.    In February of 1984, the owner of a local CPA firm called me up to see
  364.    if I knew a way to use 1-2-3 to post several hundred transactions to
  365.    approximately 60 different account numbers.  After some experimentation
  366.    and about two months of evolving the tool, I developed the product later
  367.    called "The 123 Ledger".  This general purpose transaction processor
  368.    could handle up to 1700 hundred transactions and over 100 different
  369.    account numbers, all on a computer with only 256k of memory.
  370.  
  371.    After sifting through a years worth of comments from people using these
  372.    two products, and after finally listening to Brian Heberling, a cash
  373.    management specialist who insisted there was a fundamental need for a
  374.    product that integrated a general ledger system with a cash flow
  375.    management system, the two products were merged into a single 1-2-3
  376.    application revolving around the same transaction database.  CashFlow
  377.    for 1-2-3 and The 123 Ledger became, The CashFlow Ledger.  I sincerely
  378.    hope you find the end product of this evolutionary trail to be useful.
  379.  
  380.  
  381.    WARNING TO BEGINNING LOTUS 1-2-3 USERS
  382.  
  383.    I have spent hundreds of hours teaching people how to use Lotus 1-2-3.
  384.    Please keep this in mind as you read the following statements.
  385.  
  386.    First   My experience seems to indicate that people stand to benefit far
  387.            more from learning how to apply 1-2-3 themselves, than they can
  388.            ever hope to benefit from using any one application of this
  389.            tool.  No matter how good the application is.
  390.  
  391.    Second  Exposure to advanced macro applications such as The CashFlow
  392.            Ledger too early on can, in some cases, significantly inhibit a
  393.  
  394.  
  395.                                       Page 1
  396.  
  397.  
  398.  
  399.            persons ability to learn 1-2-3 in the long term.  This is
  400.            because these applications give rookies the wrong impression.
  401.            1-2-3 is learnable by anyone interested in learning it.  Macros
  402.            are intimidating and alter the user interface, creating the
  403.            wrong first impression as to the nature of the tool.
  404.  
  405.    With these thoughts in mind, I recommend that no beginning Lotus 1-2-3
  406.    user spend any time with this product until they understand the nature
  407.    of the tool, and are thoroughly convinced that they are capable of
  408.    learning and mastering 1-2-3 in a reasonable amount of time.
  409.  
  410.  
  411.    GUIDE TO THE REST OF THIS MANUAL
  412.  
  413.    Preface    It is here that I explain my method of distributing The
  414.               CashFlow Ledger and how you can receive product updates, and
  415.               notices of additional 1-2-3 enhancement products as they are
  416.               developed.
  417.  
  418.    Chapter 2  This is a tutorial that steps you through the major functions
  419.               of The CashFlow Ledger.  It's a short introduction to what
  420.               the product does.
  421.  
  422.    Chapter 3  This is a tutorial that shows you how to set up The CashFlow
  423.               Ledger for your business.  This chapter shows you how to use
  424.               The CashFlow Ledger.
  425.  
  426.    Chapter 4  This is the section you refer to if the on-line help screens
  427.               and tutorials do not answer your questions.  It is here that
  428.               I try to include everything else that might come up.
  429.  
  430.    Appendix A Lists all of the Alt-letter commands built into The CashFlow
  431.               Ledger.  It describes where they are used and for what.
  432.  
  433.    Appendix B Lists all range names used in The CashFlow Ledger along with
  434.               cell references.
  435.  
  436.    Appendix C Summarizes the reporting options available in The CashFlow
  437.               Ledger and includes sample printouts.
  438.  
  439.    Appendix D This is a tutorial teaching you how to build a simplified
  440.               version of The CashFlow Ledger Summarize macro routines.
  441.               This is a step towards understanding the actual macro
  442.               routines being used.
  443.  
  444.    Appendix E This is a tutorial teaching you how to build a simplified
  445.               version of The CashFlow Ledger's cash flow summary routines.
  446.               This is a step towards understanding the actual macro
  447.               routines being used.
  448.  
  449.    Appendix F This is your troubleshooting chapter.  When something goes
  450.               wrong and you do not understand what caused it, or how to fix
  451.               it, you may refer here for a listing of the most common
  452.               problems and recommended remedy.
  453.  
  454.  
  455.    GETTING STARTED
  456.  
  457.    I strongly recommend that you make a backup copy of this disk
  458.    immediately.  Experimentation is a necessary part of learning how to use
  459.  
  460.  
  461.                                       Page 2
  462.  
  463.  
  464.  
  465.    any software product and not having a backup copy tends to discourage
  466.    "what-if" learning.
  467.  
  468.    The first thing you need to learn about using any macro-driven 1-2-3
  469.    worksheet is how to halt the macros, and how to start them back up
  470.    again.  Macros are halted by pressing Ctrl-Break.  You do this on an IBM
  471.    keyboard by holding down the "Ctrl" key, and tapping the "Break" key
  472.    (often referred to as the "Scroll Lock" key).  On any other keyboard,
  473.    pressing Ctrl-C will have the same affect.
  474.  
  475.    This will either put you in READY mode (the "mode" indicator is located
  476.    in the upper right hand corner of the screen) or ERROR mode.  You can
  477.    always get out of ERROR mode by pressing the "ESC" key.
  478.  
  479.    From READY mode, you can return to The CashFlow Ledger's main menu by
  480.    pressing Alt-Z.  That is, hold down the "Alt" key, and tap the "Z" key.
  481.    You will see this "Ctrl-Break" and "Alt-letter" notation frequently in
  482.    this documentation.  I encourage you to experiment with these items a
  483.    bit before moving on.
  484.  
  485.  
  486.    Another Major Barrier to Experimentation
  487.  
  488.    One of the truly brilliant features of Lotus 1-2-3 is the way it has you
  489.    do all your work in memory.  When you are done creating or modifying a
  490.    worksheet, you save it to a disk file.
  491.  
  492.    I have noticed that the work habits of many 1-2-3 users do not take full
  493.    advantage of this fact.
  494.  
  495.    Remember that while you are working with The CashFlow Ledger, you are
  496.    only working with a copy of what is stored in the disk file.  You can
  497.    experiment all you want with the copy in memory, and still return to
  498.    what you started with by retrieving the original file.
  499.  
  500.    "How do I create another copy of The CashFlow Ledger on the same disk?"
  501.    you may be wondering.  The answer is simply to change the file name when
  502.    you save it to disk.  This tells the computer to open a new folder in
  503.    our electronic filing cabinet (disk), and place in it a copy of what is
  504.    currently sitting on our electronic desk-top (memory).
  505.  
  506.  
  507.    Separating the Macros From the Data
  508.  
  509.    You may be wondering if you have to save a new copy of the 30+k of
  510.    macros each time you want to work with a new transaction database.  The
  511.    answer is "No you don't".  The "1.5 File" options allow you to maintain
  512.    transaction database files containing data only.
  513.  
  514.  
  515.    More on the Mode Indicator
  516.  
  517.    The mode indicator in the upper left corner of screen is your key for
  518.    determining whether or not macros are in control.  Whenever a macro is
  519.    be executed, the mode indicator is preceded by "CMD".
  520.  
  521.  
  522.    The Most Useful Lotus Tip I Have to Offer
  523.  
  524.    Of the hundreds of 1-2-3 tips I have developed and passed on to my
  525.  
  526.  
  527.                                       Page 3
  528.  
  529.  
  530.  
  531.    students, by far the greatest time saver has to be using your left
  532.    little finger (or "pinkie" as it is called in some parts of the country)
  533.    to hold down the left shift key on an IBM keyboard.  This converts the
  534.    direction keys into ten-key mode for entering numbers.  While using
  535.    1-2-3, you find yourself constantly switching between the need to enter
  536.    a number and the need to point to something with the direction keys.
  537.    The Num-Lock key serves the same purpose, however, while using this
  538.    method, I had great difficultly remembering to un-Num-Lock.  On the
  539.    other hand, remembering to lift my left little "pinkie" has been no
  540.    problem at all.
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.                                       Page 4
  594.  
  595.  
  596.  
  597.  
  598.    Chapter 2
  599.  
  600.    The CashFlow Ledger Introductory Tutorial
  601.  
  602.  
  603.    PURPOSE
  604.  
  605.    The purpose of this chapter is to give you a brief overview of The
  606.    CashFlow Ledger's main functions and what is involved in using them.
  607.  
  608.    If you have any trouble with any of the following steps, you may return
  609.    to the main menu at any time by pressing Ctrl-Break and then Alt-Z.
  610.  
  611.  
  612.    GETTING STARTED
  613.  
  614.    Begin by booting up Lotus 1-2-3 and loading the file, "CASHLGR" with the
  615.    following command:
  616.  
  617.    /File Retrieve <CASHLGR> <ENTER>
  618.  
  619.    Once the file is loaded, press any key to remove the message from the
  620.    screen and call up the main menu.
  621.  
  622.    As you can see, there are 7 options in the main menu.  Option 6 gives
  623.    you access to the complete on-line help system.  Option 7 is used simply
  624.    for saving The CashFlow Ledger to disk.
  625.  
  626.    Before walking through each of these, you should note that all of The
  627.    CashFlow Ledger's menus work exactly the same as 1-2-3's command menu's.
  628.    The main menu may appear different at first, but if you will look at the
  629.    upper left hand corner of the screen, you will notice the menu options
  630.    1-7 listed.  Pressing the right arrow key moves the pointer from option
  631.    to option.  Pressing the ENTER key selects an option.  As with 1-2-3,
  632.    you can select options from any CashFlow Ledger menu either by typing
  633.    the first letter, or by pointing and pressing ENTER.
  634.  
  635.    The first 5 options form the heart of The CashFlow Ledger.  To see an
  636.    overview of these options, type in the number,"6".  This takes you to
  637.    the on-line help directory screen which gives you an overview of the
  638.    five main submenus.  Along the top of your screen is a menu giving you
  639.    access to help screens for each of the main menu options.  You will get
  640.    a chance to look at the help screens later, but for now, type the letter
  641.    "Q" to return to the main menu.
  642.  
  643.    Everything in The CashFlow Ledger revolves around a single transaction
  644.    database.  The first option in the main menu is your key to modifying
  645.    (adding, changing, sorting, etc.) this transaction database.  Select the
  646.    Modify option now by typing in the number "1".
  647.  
  648.    You will see the top of the transaction database appear with several
  649.    sample transactions already entered.  You will note that the fields (or
  650.    columns) in this database are rather generic.  That's right, there are
  651.    only 5 - Date, Tran#, Description, Account#, and Amount.  "But doesn't
  652.    that greatly limit the usefulness of the product?" you may be wondering.
  653.    The answer is yes it does.  But on the other hand, applications you can
  654.    come up with that only need these five fields (and I have good reason to
  655.    believe there are several) The CashFlow Ledger handles very well.
  656.  
  657.  
  658.  
  659.                                       Page 5
  660.  
  661.  
  662.  
  663.    The menu now appearing along the top of the screen is the Modify
  664.    submenu.  You might note that pointing to the different menu options
  665.    causes a description of the option to appear on the line below.  The
  666.    main menu is the only CashFlow Ledger menu that uses the other technique
  667.    to display these descriptions.
  668.  
  669.  
  670.    ENTERING A TRANSACTION
  671.  
  672.    To add a transaction, select the Add/Edit option by typing in an "A".
  673.    Notice that this simply kicks you into READY mode.  Use the direction
  674.    keys to move the cell pointer to column B of the next blank row in the
  675.    database.  Now execute the Alt-A macro by holding down the Alt key and
  676.    tapping the "A" key.  (From this point on I'm simply going to say "Press
  677.    Alt-A" or "Press Alt-R".) To enter the date "29-Apr-85" all you have to
  678.    do is type in the number 29 and press ENTER.  The rest of the date will
  679.    be entered for you using the current month and year displayed in the
  680.    upper left corner of your screen.  The following steps will complete
  681.    this transaction:
  682.  
  683.    Type in 511 and press ENTER
  684.  
  685.    Type in "Magee - CashFlow Ledger" and press ENTER
  686.  
  687.    Type in "777" and press ENTER
  688.  
  689.    Type in "-75" and press ENTER
  690.  
  691.    That's all there is to entering a transaction.  You are required only to
  692.    enter the date, account#, and amount for each transaction.  The rest can
  693.    be skipped simply by pressing the ENTER key.
  694.  
  695.    Note that the Alt-A macro loops back around and positions the cell
  696.    pointer for entering the next transaction.  To break out of this macro
  697.    (or any macro for that matter) hold down the "Ctrl" key and tap the
  698.    "Break" key.  The "Break" key is the same as the "Scroll Lock" key on
  699.    most keyboards.  From this point on, I will simply say "press
  700.    Ctrl-Break".
  701.  
  702.    Because the Add/Edit option places you in READY mode, you are free to
  703.    modify the transaction database using 1-2-3's normal commands.  Several
  704.    macros have also been set up for use within this option.  You can take a
  705.    quick look at them by pressing Alt-H.  These macros will be covered as
  706.    we progress through the tutorial.  Press ENTER to return to the
  707.    database.
  708.  
  709.    Press Alt-M to return to the Modify submenu.
  710.  
  711.  
  712.    SORTING THE DATABASE
  713.  
  714.    Select the Sort option from the Modify submenu by typing in an "S".  The
  715.    screen will flash for a moment and then the Sort submenu will appear
  716.    indicating the different ways the database can be sorted.  To sort by
  717.    account number, type in a "4".  You are then asked to indicate
  718.    (A)scending or (D)escending.  Type in an "A" and press ENTER to indicate
  719.    ascending (lowest to highest).  The database will be sorted
  720.    instantaneously.
  721.  
  722.    To resort the database by date, type in a "1".  Then type in an "A" to
  723.  
  724.  
  725.                                       Page 6
  726.  
  727.  
  728.  
  729.    indicate ascending, and press ENTER.
  730.  
  731.    Type in a "Q" to exit the Sort menu and return to the Modify submenu.
  732.  
  733.  
  734.    VIEWING THE MODIFY HELP SCREENS
  735.  
  736.    Type in an "H" to display the first Modify help screen.  You can view
  737.    the remaining help screens by pressing the ENTER key.  After the last
  738.    screen has been displayed, you will be returned to the Modify submenu.
  739.  
  740.    Select the Quit option from the Modify submenu by typing a "Q".  The
  741.    screen will flash a moment before returning you to the main menu.
  742.  
  743.  
  744.    THE QUERY DATA OPTIONS
  745.  
  746.    From the main menu, type in a "2" to select the Query Data Option.  The
  747.    submenu that appears gives you several easy ways to selectively view
  748.    transactions from the database.  For example, to see all transactions
  749.    for account number 655, select the Account option by typing an "A".
  750.    When prompted to enter an account number, type in "655" and press ENTER.
  751.    In a moment, you will see all transactions for that account number
  752.    appear on the screen, along with the account's balance in the upper
  753.    right corner.
  754.  
  755.    When finished you are returned to the Query submenu.  The Date_Range
  756.    option allows you to see all transactions falling between two dates.
  757.    Select this option now by typing in a "D".  The top portion of the
  758.    screen will be updated and a new menu will appear.  There are several
  759.    options within The CashFlow Ledger that ask you to enter a date range.
  760.    Each time you enter a date range for one of these options it is
  761.    "remembered" for all subsequent "Date_Range" options.  When you select
  762.    any of the "Date_Range" options, this last date range will be displayed
  763.    as it is on your screen now, and you will see a menu giving you the
  764.    opportunity to change the dates or leave them the same.
  765.  
  766.    All dates in The CashFlow Ledger must be entered in numeric format.  To
  767.    illustrate, select the "Change_Dates" option from the menu now
  768.    appearing.  Enter the following responses enclosed in <> followed by an
  769.    ENTER when prompted:
  770.  
  771.    Enter beginning year number <85>
  772.  
  773.    Enter beginning month number <4>
  774.  
  775.    Enter beginning day number <1>
  776.  
  777.    Enter ending year number <85>
  778.  
  779.    Enter ending month number <4>
  780.  
  781.    Enter ending day number <15>
  782.  
  783.    After answering the last prompt, the transactions falling between these
  784.    two dates will appear on the screen along with the total in the upper
  785.    right corner.
  786.  
  787.    When the Query submenu reappears, select the "Quit" option by typing in
  788.    a "Q".
  789.  
  790.  
  791.                                       Page 7
  792.  
  793.  
  794.  
  795.  
  796.  
  797.    THE SUMMARIZE OPTIONS
  798.  
  799.    The CashFlow Ledger has two main uses: It can either be used as a
  800.    posting tool or a short term cash flow management tool.  In some cases,
  801.    it can be used for both at the same time.  To illustrate what is meant
  802.    by a "posting tool", select the Summarize option from the main menu by
  803.    typing in a "3".  Then select the "All" option from the Summarize
  804.    submenu by typing in an "A".
  805.  
  806.    In a moment or two, you will see a list of account numbers appear, with
  807.    the total, or balance of each account to its right.  The list of account
  808.    numbers is taken from the transaction database itself.  Every time you
  809.    enter a transaction with a different account number into the database,
  810.    it will be automatically added to this list the next time you summarize.
  811.    The balance for each account is calculated by adding up the "Amount"s of
  812.    all transactions for each account number.
  813.  
  814.    Note that the "Date_Range" option allows you to do the same thing but it
  815.    only includes transactions falling within a specified time period.
  816.  
  817.  
  818.    PRINTING SUMMARY REPORTS
  819.  
  820.    If you have a printer handy, you might try printing the following
  821.    reports for your reference.
  822.  
  823.    From the Summarize submenu, select the "Print" option by typing in a
  824.    "P".  The first option, "Summary" is simply a printout of what you
  825.    currently see on the screen.  The "Account" option on the other hand,
  826.    takes each account number shown in the summary area, prints out its
  827.    balance, along with all of the transactions that make up that balance.
  828.    This is often referred to as a G/L listing in the accounting world.
  829.  
  830.    Note that all print options in The CashFlow Ledger remind you to align
  831.    the printer paper before they begin printing.  You may stop the printing
  832.    of any report by pressing Ctrl-Break once.
  833.  
  834.    After printing these reports, select the "Quit" option to return to the
  835.    Summarize submenu, and "Quit" again to return to the main menu.
  836.  
  837.  
  838.    THE CASHFLOW SUMMARY OPTIONS
  839.  
  840.    If your company already has a useful accounting system installed, you
  841.    might consider using The CashFlow Ledger for its short term cash flow
  842.    management system alone.  The cash flow routines graphically summarize
  843.    the amount cash increases or decreases each day, and the daily cash
  844.    balance resulting from the transactions in the database for the current
  845.    month.
  846.  
  847.    From the main menu, select the Cash Flow Summary option by typing in a
  848.    "4".  Select the "Calculate" option by typing in a "C".  When prompted
  849.    for a beginning balance, type in "100" and press ENTER.  In a few
  850.    moments, the daily cash flow data will be calculated and the cash flow
  851.    summary shown in the upper half of the screen will be updated.
  852.  
  853.    When the CashFlow submenu appears, select the "Graph" option by typing
  854.    in a "G".  To view a line graph of the daily cash flow resulting from
  855.  
  856.  
  857.                                       Page 8
  858.  
  859.  
  860.  
  861.    April transactions in the database, type in a "C".
  862.  
  863.    Press any key to remove the graph from the screen.  To view a line graph
  864.    of April's daily balance, type in a "D".
  865.  
  866.    Note that you may have several months worth of data in the transaction
  867.    database and still see these cash flow graphs for any one month.  The
  868.    "Calculate" routines use Date arithmatic to distinguish between the
  869.    months.  The current year and month shown in the upper left of your
  870.    screen determine which month the cash flow will be calculated for.  The
  871.    current year and month are changed via the "Date" option.
  872.  
  873.    This concludes the introductory tutorial.  I hope it has opened your
  874.    eyes to some of the ways The CashFlow Ledger can be used to save time
  875.    and money in your business.
  876.  
  877.  
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.                                       Page 9
  924.  
  925.  
  926.  
  927.  
  928.    Chapter 3
  929.  
  930.    Setting up The CashFlow Ledger For Your Own Business
  931.  
  932.  
  933.    PURPOSE
  934.  
  935.    The purpose of this chapter is to walk you through the following steps
  936.    necessary to set up The CashFlow Ledger for your business:
  937.  
  938.       - Loading The CashFlow Ledger
  939.  
  940.       - Initializing the database
  941.  
  942.       - Entering transactions
  943.  
  944.       - Setting up recurring transactions
  945.  
  946.  
  947.    LOADING THE CASHFLOW LEDGER
  948.  
  949.    Begin by retrieving the file CASHLGR from disk by entering the following
  950.    command:
  951.  
  952.      /File Retrieve <CASHLGR> <ENTER>
  953.  
  954.    (Note: The <>'s need not be entered)
  955.  
  956.  
  957.    INITIALIZING THE CASHFLOW LEDGER
  958.  
  959.    When loaded, press ENTER once to remove the Copyright notice from the
  960.    screen and call up the main menu.  Initializing The CashFlow Ledger
  961.    removes all transactions from the database.  You do this with the
  962.    "Setup" option in the main menu.  Select this now by typing in a "5".
  963.    Notice that the main menu descriptions remain on the screen but that a
  964.    new menu appears at the top of the screen.  Select the "Init" option
  965.    from this menu now by typing in an "I".  You are given one last chance
  966.    to cancel the command in case it was selected accidently.  You want to
  967.    select the "Yes" option to complete the command by typing a "Y".
  968.  
  969.    The screen will flash for a moment and then you will be asked to enter
  970.    the first transaction.  This is necessary to keep the macros happy.
  971.    When you go to enter transactions from within the Add/Edit option, you
  972.    will only be required to enter the day of the month for the "Date"
  973.    column.  When entering this first transaction however, you are asked to
  974.    enter the year, month, and day.  The year and month are used to
  975.    establish the "current year and month".  The current year and month can
  976.    be changed later using any of the date options.
  977.  
  978.    Go ahead and enter the first transaction as prompted.  If you don't have
  979.    it handy, just enter a dummy transaction for now, you will have a chance
  980.    to edit or replace it later.
  981.  
  982.    When finished, you will be returned to the Setup submenu.  At this
  983.    point, you have done everything necessary to begin adding your own
  984.    transactions to the database.  We will return to the Setup option later,
  985.    but for now, type in a "Q" to return to the main menu.
  986.  
  987.  
  988.  
  989.                                       Page 10
  990.  
  991.  
  992.  
  993.  
  994.    IS IT CASH FLOW OR LEDGER?
  995.  
  996.    The CashFlow Ledger can be used in two completely different ways.
  997.    First, to use it as a short term cash flow management system, you enter
  998.    transactions you expect to occur in the future into the transaction
  999.    database.  With this done, you can evaluate the cash flow that will
  1000.    result from this activity using the Cashflow Summary options.  Second,
  1001.    to use it as a ledger management system, you enter historical
  1002.    transactions and then use the Summarize options to calculate the
  1003.    balances of each account.
  1004.  
  1005.    How about both at the same time?  Both future and historical
  1006.    transactions can be maintained in database at the same time.  The
  1007.    CashFlow Ledger simply looks at the "Date" column in the database to
  1008.    distinguish between the two.  As time passes, there is no reason why
  1009.    future transactions (if they indeed actually occur as expected) can't be
  1010.    used for ledger purposes as well.
  1011.  
  1012.  
  1013.    MAINTAINING MULTIPLE LEDGERS
  1014.  
  1015.    You may decide that you would like to maintain multiple ledgers.  The
  1016.    "1.5 File" option is your key to doing this.  This option allows you to
  1017.    extract the transaction database to a separate file or retrieve a
  1018.    transaction database already stored in a separate file.  This way, you
  1019.    need not store a separate set of CashFlow Ledger macros for each
  1020.    transaction database you wish to maintain.
  1021.  
  1022.    If you need to combine more than one transaction database, I recommend
  1023.    that you use 1-2-3's /File Combine Copy command while in Add/Edit mode.
  1024.    Just make sure you have positioned the cell pointer to where you want
  1025.    the transactions from the new database to begin, before entering the
  1026.    command.
  1027.  
  1028.    Because it is sometimes difficult to remember to enter checks as
  1029.    negative numbers, you may want to maintain separate ledgers for checks
  1030.    and deposits, and then merge them after they have all been entered.
  1031.  
  1032.  
  1033.    ENTERING TRANSACTIONS
  1034.  
  1035.    To begin entering transactions, select the "Modify" option from the main
  1036.    menu by typing a "1", and then the "Add/Edit" option from the Modify
  1037.    submenu by typing an "A".
  1038.  
  1039.    Notice that this option kicks you out of macro control and into READY
  1040.    mode (as indicated in the upper right corner of your screen).  In READY
  1041.    mode, you have full access to 1-2-3's regular commands.
  1042.  
  1043.    For example, if you entered a dummy transaction at the time you
  1044.    initialized The CashFlow Ledger, you can easily erase it now with the
  1045.    /Range Erase command.  The two commands you should avoid using if
  1046.    possible are the /Worksheet Delete Row and /Move.  These are the two
  1047.    commands that destroy range names if you are not careful.  If you do
  1048.    need to use them for some reason, just be sure that you do not delete or
  1049.    move another range over the top of one of the end points in the named
  1050.    range, DB. You may want to check the coordinates of this range before
  1051.    entering a Delete Row or Move command.
  1052.  
  1053.  
  1054.  
  1055.                                       Page 11
  1056.  
  1057.  
  1058.  
  1059.  
  1060.    The Current Year And Month
  1061.  
  1062.    Before you begin entering transactions First make sure that the "current
  1063.    year and month" in the upper left corner of your screen refer to the
  1064.    month you want to analyze.  This date can either be changed by selecting
  1065.    the "Date" option from the Modify submenu, or by using the Alt-D macro
  1066.    from within the "Add/Edit" option.  Go ahead and try this now by holding
  1067.    down the "Alt" key and tapping the "D" key.  Enter the year and month
  1068.    numbers as prompted and press the ENTER key after typing in each
  1069.    response.
  1070.  
  1071.  
  1072.    The Alt-A Macro
  1073.  
  1074.    To begin adding transactions, simply move the cell pointer using the
  1075.    direction keys to the next blank row in the database.  Starting in the
  1076.    "Date" column, execute the Alt-A macro by holding down the "Alt" key and
  1077.    tapping the "A" key.
  1078.  
  1079.    To enter the date, all you have to type is the day number.  The rest of
  1080.    the date will be filled in using the current month and year shown in the
  1081.    upper left hand corner of the screen.  The "Tran#" and "Description"
  1082.    columns are optional and can be skipped by pressing the ENTER key.
  1083.    After entering the amount, the macro positions the cell pointer for
  1084.    entering the next transaction.  To stop the Alt-A macro, press Control
  1085.    Break by holding down the "Ctrl" key and tapping the "Break" key (or
  1086.    "Scroll Lock" key on some keyboards).
  1087.  
  1088.  
  1089.    Other Alt-Letter Commands
  1090.  
  1091.    To see a list of all Alt-letter commands available from within the
  1092.    "Add/Edit" option, hold down the "Alt" key and tap the "H" key.  To
  1093.    return to the transaction database, simply press the ENTER key.
  1094.  
  1095.    Alt-S and Alt-Y are your shortcuts to the summarize options.  Alt-C
  1096.    takes you directly to the Cash Flow Summary routines.  Alt-L and Alt-R
  1097.    are the keys to entering recurring transactions which we will go over
  1098.    shortly.
  1099.  
  1100.  
  1101.    Recalculation Method
  1102.  
  1103.    The more transactions you enter, the longer it takes 1-2-3 to
  1104.    recalculate the worksheet.  Just use 1-2-3's /Worksheet Global
  1105.    Recalculation command to switch over to Manual recalculation.  The
  1106.    worksheet can be recalculated any time you wish by pressing the F9 key.
  1107.    All macros function properly in with recalculation set either to Manual
  1108.    or Automatic.
  1109.  
  1110.  
  1111.    SETTING UP RECURRING TRANSACTIONS
  1112.  
  1113.    (IT IS NOT RECOMMENDED THAT YOU ATTEMPT TO USE THIS RECURRING
  1114.    TRANSACTION FEATURE UNTIL YOU: ARE THOROUGHLY FAMILIAR WITH 1-2-3'S
  1115.    RANGE NAME COMMANDS, ARE COMFORTABLE ISSUING ALT-LETTER MACRO COMMANDS,
  1116.    AND KNOW HOW TO PRESS CONTROL-BREAK TO "UNDO" A COMMAND YOU ARE IN THE
  1117.    PROCESS OF ENTERING.  THIS FEATURE HAS BEEN INCLUDED BECAUSE IT HAS SO
  1118.    MUCH POTENTIAL USEFULNESS, I BELIEVE IT IS WORTH INVESTING THE TIME TO
  1119.  
  1120.  
  1121.                                       Page 12
  1122.  
  1123.  
  1124.  
  1125.    LEARN THE ABOVE ITEMS.)
  1126.  
  1127.  
  1128.    Recurring transactions are set up from within the "Setup" main menu
  1129.    option.  Press Alt-M to return to the Modify submenu, and then select
  1130.    the "Quit" option to return to the main menu.  Select the "Setup" option
  1131.    by typing a "5".  And finally, select the "Recur_Trans" option by typing
  1132.    an "R".
  1133.  
  1134.    Now select the "Add/Edit" option from this menu by typing an "A".  You
  1135.    will note that this "Add/Edit" option is similar to the Modify Add/Edit
  1136.    option.  It also kicks you into READY mode and also has some Alt-letter
  1137.    commands set up to assist you.
  1138.  
  1139.    The idea behind the recurring transaction feature is that most
  1140.    businesses have transactions or groups of transactions that occur every
  1141.    month.  (i.e. payment of rent, payments to suppliers, payments on bank
  1142.    notes, depreciation, bank service charges ..).  You can set these
  1143.    transactions up in this section once, and then copy them into the
  1144.    database each month with just a couple keystrokes.  The usefulness of
  1145.    this feature will be greatest if you follow these instructions very
  1146.    carefully when setting up the transactions.
  1147.  
  1148.    Recurring transactions are set up as follows:
  1149.  
  1150.    1) Enter a one line description of the transaction group in column A.
  1151.       This description must be entered as a Label and begin with the "*"
  1152.       character.  The "*" flags it for inclusion in the listing of
  1153.       recurring transaction descriptions produced by the Alt-L macro.  It's
  1154.       a good idea to include in this description, the named range to be
  1155.       assigned to the transaction group.  The named range is what you will
  1156.       be expected to remember when it comes time to add a group of
  1157.       recurring transactions to the database via the Alt-R macro.
  1158.  
  1159.    2) Use the Alt-T macro to enter the transactions as you would like them
  1160.       copied into the transaction database each time they are to be used.
  1161.       Alt-T enters the date in a special format that ties it to the current
  1162.       month and year.  The other macros function the same as Alt-A.  To
  1163.       complete the date, you need only type in the day number and press
  1164.       ENTER to continue on.
  1165.  
  1166.    3) Use 1-2-3's /Range Name Create command to assign a name to the entire
  1167.       group of transactions.  You must be careful here not to use a range
  1168.       name currently in use by The CashFlow Ledger's macros.  If when you
  1169.       enter the range name and press return, the cell pointer jumps to some
  1170.       other location in the worksheet, halt the operation immediately by
  1171.       pressing Ctrl-Break.  I recommend the use of numbers for names.  In
  1172.       other words, assign the first group of transactions the name "1", the
  1173.       second, "2", and so on.
  1174.  
  1175.    A couple of sample recurring transactions have been set up to give you a
  1176.    better idea of what is involved.  The range names 1, and 2 have been
  1177.    assigned to these two blocks of transactions.  To verify this, enter the
  1178.    following command:
  1179.  
  1180.    /Range Name Create <1> <ENTER>
  1181.  
  1182.    (Do not enter <>'s)
  1183.  
  1184.    After entering this command, you should see the first block of
  1185.  
  1186.  
  1187.                                       Page 13
  1188.  
  1189.  
  1190.  
  1191.    transactions highlighted.  This is what is copied into the database when
  1192.    you enter recurring transaction number 1 using the Alt-R option.
  1193.  
  1194.    Note also the description beginning in column A.  It begins with the
  1195.    letter "*" and includes the range name assigned to the transactions
  1196.    below it.  The "*" is required for the Alt-L macro to work.  The range
  1197.    name is included in this description only to remind you what it is.
  1198.  
  1199.    One last thing you should note is how the dates have been entered.  You
  1200.    will learn how to enter the recurring transactions in a moment.  For
  1201.    now, just note that by entering the dates in this fashion, it ties them
  1202.    to the "Current year and month".
  1203.  
  1204.    To see how they are entered, we need to return to the database using the
  1205.    following steps:
  1206.  
  1207.      Press Alt-N
  1208.  
  1209.      Select the Quit option
  1210.  
  1211.      Select the Quit option again
  1212.  
  1213.      Select option "1" from the main menu
  1214.  
  1215.      Select the Add/Edit option
  1216.  
  1217.    Now move the cell pointer down a few lines past the last transaction and
  1218.    into column A.  To see a list of the recurring transactions currently
  1219.    set up, press Alt-L.  In a moment, you should see the two lines appear
  1220.    describing each of the recurring transactions.
  1221.  
  1222.    After noting the range names assigned to each, (in this case the numbers
  1223.    "1" and "2"), use 1-2-3's /Range Erase command to erase these two
  1224.    descriptions and the "*" that appeared above them.
  1225.  
  1226.    Move the cell pointer to column B of the next blank row and press Alt-R.
  1227.    You will be asked to enter a range name, type in either a "1" or a "2"
  1228.    and press ENTER.  In a moment, you will see one of the blocks of
  1229.    transactions copied in, and each of the dates converted from formulas to
  1230.    their current values.  This is done to prevent the dates from changing
  1231.    each time you change the "Current Year and Month".
  1232.  
  1233.    You may want to erase these from your database with the /Range Erase
  1234.    command before going on to set up your own recurring transactions.
  1235.  
  1236.    Now return to the Recurring transaction section with the following
  1237.    steps:
  1238.  
  1239.      Press Alt-M
  1240.  
  1241.      Select the Quit option
  1242.  
  1243.      Select option "5" from the main menu
  1244.  
  1245.      Select the Recur_Trans option
  1246.  
  1247.      Select the Add/Edit option
  1248.  
  1249.    You will probably want to use the /Range Erase command to erase the two
  1250.    sample recurring transactions.  Notice that erasing them does not have
  1251.  
  1252.  
  1253.                                       Page 14
  1254.  
  1255.  
  1256.  
  1257.    any affect on the range names.  You must remove these with the Range
  1258.    Name Delete command.  Please be extremely careful here.
  1259.  
  1260.    Move to column A of the row to contain your first recurring transaction.
  1261.    Enter a description of the first block of recurring transactions.  Make
  1262.    sure that the first character in this description is an asterisk "*".
  1263.  
  1264.    With the description entered, you are now ready to enter the
  1265.    transactions.  Move to column B of the row following the description and
  1266.    press Alt-T.  You will see "@DATE($YEAR,$MONTH," appear on the command
  1267.    line.  Type in the day of the month you expect the first transaction to
  1268.    occur and press ENTER.  The transaction number will be different each
  1269.    month so just press ENTER to move on to the Description column.  Type in
  1270.    the description and press ENTER.  Type in the Account number and press
  1271.    ENTER.  Type in the amount and press ENTER.  The cell-pointer will be
  1272.    positioned for entering the next transaction in the group.  Enter each
  1273.    of the transactions you would like included in this block.
  1274.  
  1275.    When finished, press Control-Break to exit the Alt-T macro.
  1276.  
  1277.    Then use the /Range Name Create command to assign a name to the block of
  1278.    transactions.  Be sure and include all columns (Date through Amount) in
  1279.    the named range.  The range name you use here is the answer you will
  1280.    give the Alt-R macro.  It does not have to be a number.  I just used
  1281.    numbers to illustrate one approach.  Again, if you don't use numbers,
  1282.    you run the risk of entering a name already in use by The CashFlow
  1283.    Ledger's macro routines.  If you enter a name already in use, it will
  1284.    highlight the range previously assigned the name.  If this occurs,
  1285.    simply press Control-Break to halt the command.
  1286.  
  1287.    Repeat the above process for any other "groups" of recurring
  1288.    transactions you need to set up, and then return to "1.1 Add/Edit" to
  1289.    try them out.  You should try changing the current date with the "1.4
  1290.    Date" option to see how the dates in these recurring transactions
  1291.    automatically adjust.
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  
  1303.  
  1304.  
  1305.  
  1306.  
  1307.  
  1308.  
  1309.  
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.                                       Page 15
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.    Chapter 4
  1326.  
  1327.    Reference Section
  1328.  
  1329.  
  1330.    PURPOSE
  1331.  
  1332.    The purpose of this chapter is indicate the purpose of each command and
  1333.    the action required to execute it.  You should refer to the appropriate
  1334.    section of this manual when the on-line help screens and tutorials prove
  1335.    to be of no assistance.
  1336.  
  1337.  
  1338.    1  Modify Options
  1339.  
  1340.    Purpose:  Use this option any time you want to modify the transaction
  1341.              database.
  1342.  
  1343.    Menu Structure:
  1344.  
  1345.          1.1 Add/Edit
  1346.          1.2 Sort
  1347.          1.3 Balance
  1348.          1.4 Date
  1349.          1.5 Print
  1350.          1.6 File
  1351.              1.6.1 Xtract
  1352.              1.6.2 Retrieve
  1353.              1.6.3 Quit
  1354.          1.7 Help
  1355.          1.8 Quit
  1356.  
  1357.    1.1  Add/Edit
  1358.  
  1359.    Purpose:  Use to add new transactions or edit existing transactions.
  1360.  
  1361.    Action:   Since selecting this option puts you in READY mode, you are
  1362.              free to move around using the regular direction keys.  You may
  1363.              enter or modify transactions using 1-2-3 commands or by using
  1364.              the following macros:
  1365.  
  1366.                Alt-A  Use to add transactions to the database.  Requires
  1367.                       that you be in column B before it is executed.  When
  1368.                       executed, you are prompted for the following
  1369.                       information:
  1370.  
  1371.                        Day # - The current month and year displayed in the
  1372.                                upper left corner of the screen are combined
  1373.                                automatically with this day number to enter
  1374.                                the complete date of the transaction.  The
  1375.                                current month and year can be changed by
  1376.                                selecting any of the "Date" options
  1377.                                appearing in the various menus, or by using
  1378.                                the Alt-D macro while in Add/Edit mode.
  1379.  
  1380.                        Tran# - Since this field is not used in any of the
  1381.                                calculations, you have total flexibility
  1382.                                over how it is used.  You may enter check
  1383.  
  1384.  
  1385.                                       Page 16
  1386.  
  1387.  
  1388.  
  1389.                                numbers, journal entry numbers, or simply
  1390.                                ******'s if for example, you are entering
  1391.                                "future" transactions for cash flow
  1392.                                projection purposes, where the check numbers
  1393.                                are not yet known.  It is not a required
  1394.                                entry and may be skipped by simply pressing
  1395.                                the ENTER key.
  1396.  
  1397.                        Descr - A description of the transaction which may
  1398.                                be up to 240 characters long.  Only 28
  1399.                                characters of this column will be displayed
  1400.                                due to the columns width, but it will still
  1401.                                be retained and can be viewed by editing the
  1402.                                cell.  Again, this column is not used in any
  1403.                                of the calculations and therefore be skipped
  1404.                                simply by pressing the ENTER key.
  1405.  
  1406.                        Acct# - An account number by which you would like to
  1407.                                total a group of transactions.  You must
  1408.                                either develop your own chart of accounts or
  1409.                                use one of the sample chart of accounts
  1410.                                provided on the disk.  In either case, it is
  1411.                                essential that you enter the transactions in
  1412.                                accordance with your chart of accounts
  1413.                                consistently.
  1414.  
  1415.                        Amount- You decide how you want to enter transaction
  1416.                                amounts.  There are many possible methods,
  1417.                                but once established, the method should be
  1418.                                followed consistently.  If for example, you
  1419.                                wish to use The CashFlow Ledger as a General
  1420.                                Ledger system, debits could be entered as
  1421.                                positive numbers and credits as negative.
  1422.                                This way, you could always tell if you were
  1423.                                in balance by checking the "Balance" in the
  1424.                                upper right corner of the screen.  If debits
  1425.                                equal credits, this "Balance" should equal
  1426.                                0.  If on the other hand, you decide to use
  1427.                                The CashFlow Ledger as a checkbook ledger,
  1428.                                then deposits could be entered as positive
  1429.                                numbers and checks as negative numbers.  In
  1430.                                this case, the "Balance" will indicate your
  1431.                                checkbook balance and the 1.3 Balance option
  1432.                                could be used to view your balance on any
  1433.                                previous date.  The CashFlow Ledger is used
  1434.                                frequently as simply a transaction
  1435.                                summarizer.  If you decide to go this way,
  1436.                                you might consider entering all deposits in
  1437.                                one file and all checks in another to avoid
  1438.                                having to worry about entering positive and
  1439.                                negative numbers.
  1440.  
  1441.  
  1442.                Alt-C  Use as a short cut to jump you automatically to the
  1443.                       "4.1 Calculate" routine.  Prompts you for a beginning
  1444.                       balance performs the calculations, and returns you to
  1445.                       the Cash Flow Summary submenu.
  1446.  
  1447.                Alt-D  Use to change the current month and year for
  1448.                       transaction entry.  Should be used only while in
  1449.  
  1450.  
  1451.                                       Page 17
  1452.  
  1453.  
  1454.  
  1455.                       Add/Edit mode.
  1456.  
  1457.                Alt-H  Takes you to a help screen listing information
  1458.                       related to the Add/Edit option.  Pressing the ENTER
  1459.                       key returns you to the Add/Edit option.
  1460.  
  1461.                Alt-L  Use to list descriptions of all recurring
  1462.                       transactions you have set up using the "5.1
  1463.                       Recur_Trans" option.  You must follow the rules
  1464.                       carefully when setting up these recurring
  1465.                       transactions for the Alt-L macro to work.  Be sure
  1466.                       and move to a blank area before executing this macro
  1467.                       to avoid having the listing wipe out data.  Use
  1468.                       1-2-3's Range Erase command to remove the listing
  1469.                       after viewing.
  1470.  
  1471.  
  1472.  
  1473.                Alt-M  Returns you to the Modify submenu.
  1474.  
  1475.                Alt-R  Use to copy in a set of recurring transactions as
  1476.                       entered using the "5.1 Recur_Trans" option.  Prompts
  1477.                       you for a the range name assigned to the set of
  1478.                       transactions, then copies in the named range, and
  1479.                       converts the dates from @DATE formulas to numbers.
  1480.                       This last step prevents the dates from changing when
  1481.                       the current month and year are changed.  This macro
  1482.                       should be executed while in column B if the recurring
  1483.                       transactions have been set up exactly as instructed.
  1484.  
  1485.                Alt-S  Use as a short cut to the Summarize submenu while in
  1486.                       READY mode.
  1487.  
  1488.                Alt-Y  Use as a short cut to the "3.1 All" menu option while
  1489.                       in READY mode.  This macro was included to maximize
  1490.                       the "what-if" capabilities of the application.
  1491.  
  1492.    Notes:   Remember that the F10 (Graph) key can be used to display the
  1493.             last graph shown on the screen and that the F8 (Table) key can
  1494.             be used to recalculate the last Data Table command.  Which Data
  1495.             Table command it executes depends on the last summary you
  1496.             performed via the macros was by account number or daily cash
  1497.             flow.
  1498.  
  1499.    1.2  Sort
  1500.  
  1501.    Purpose:  Use to sort the transaction database by any of the 5 columns
  1502.              in either Ascending or Descending order.  Not recommended if
  1503.              you have used formulas while entering any of the transactions.
  1504.              Will not work if you have skipped lines in the database.
  1505.  
  1506.    Action:   After selecting this option, the screen will flash for a
  1507.              moment, and then the following menu options will appear
  1508.  
  1509.              Date  Tran#  Descr  Acct#  Amount  Quit
  1510.  
  1511.              After selecting one of them, type in an A or D and then press
  1512.              ENTER to complete the sort.
  1513.  
  1514.    1.3  Balance
  1515.  
  1516.  
  1517.                                       Page 18
  1518.  
  1519.  
  1520.  
  1521.  
  1522.    Purpose:  Use to view the total of all transactions up to and including
  1523.              a specific date.  If you are using The CashFlow Ledger as a
  1524.              checkbook ledger, this option can be used to determine you
  1525.              balance on a specific date thus eliminating the need to
  1526.              maintain a separate column for a running balance.
  1527.  
  1528.    Action:   You must enter the year, month, and day in numeric format as
  1529.              prompted.  After the balance is displayed, a message appears
  1530.              on the screen indicating that you must press ENTER to return
  1531.              to the Modify submenu.
  1532.  
  1533.  
  1534.    1.4  Date
  1535.  
  1536.    Purpose:  Use to change the current month and date for transaction
  1537.              entry.  Has the same affect as the menu options; "4.3 Date"
  1538.              and "5.2 Date"
  1539.  
  1540.    Action:   You must enter the year and month in numeric format as
  1541.              prompted.
  1542.  
  1543.    1.5  Print
  1544.  
  1545.    Purpose:  Use to print a raw listing of the entire transaction database
  1546.              in its current sorted order.  Appendix C contains a sample
  1547.              listing of this report and more information on printing.
  1548.  
  1549.    Action:   After selecting this option, you will be prompted to align the
  1550.              printer paper and then press ENTER.  After printing, you will
  1551.              be returned to the Modify submenu.
  1552.  
  1553.    1.6  File
  1554.  
  1555.    Purpose: Use to maintain database files separate from The CashFlow
  1556.    Ledger's macro routines.
  1557.  
  1558.    1.6.1  Xtract
  1559.  
  1560.    Purpose:  Use to store transactions in files separate from The CashFlow
  1561.              Ledger's macro routines and work areas.
  1562.  
  1563.    Action:   After selecting this option, you will be prompted for a file
  1564.              name.  You type in the name and press ENTER.  A message will
  1565.              then appear on the screen indicating that after the save has
  1566.              been completed, you are to press Alt-M to return to the main
  1567.              menu.  If a file already exists with the name you entered, you
  1568.              will be given a chance to cancel the Xtract command, or
  1569.              replace the old file with the new set of transactions.
  1570.  
  1571.  
  1572.    1.6.2  Retrieve
  1573.  
  1574.    Purpose:  Use to erase transactions currently in the database and
  1575.              retrieve transactions from another file.  It is recommended
  1576.              that you use this option only to retrieve transactions from
  1577.              files created by the 1.6.1 Xtract command.
  1578.  
  1579.    Action:   After selecting this option, you will be given one last chance
  1580.              to cancel the command.  This serves to warn you that all
  1581.  
  1582.  
  1583.                                       Page 19
  1584.  
  1585.  
  1586.  
  1587.              transactions currently in the database will be erased.  If you
  1588.              select the "No" option, you will be returned to the Modify
  1589.              submenu without affecting the database.  After selecting the
  1590.              "Yes" option, the current transactions database will be erased
  1591.              and you will be prompted for the name of the file to combine.
  1592.              A list of all file names in the current directory will be
  1593.              displayed on the control panel for you to select from.  After
  1594.              selecting a file name, the transactions will be added to the
  1595.              database and you will be returned to the Modify submenu.
  1596.  
  1597.    1.6.3  Quit
  1598.  
  1599.    Purpose:  Use to return to the Modify submenu.
  1600.  
  1601.    1.7  Help
  1602.  
  1603.    Purpose:  Use to display the help screens for the "Modify Database" menu
  1604.              options.
  1605.  
  1606.    Action:   After selecting this option, simply press the ENTER key until
  1607.              you have been returned to the Modify submenu.
  1608.  
  1609.    1.8  Quit
  1610.  
  1611.    Purpose:  Use to return to the main menu.
  1612.  
  1613.    Note:     In some cases, you will enter commands while within the
  1614.              "Add/Edit" option that screw up the key range name, "DB".
  1615.              This is the "Achilles heel" of The CashFlow Ledger.  If, when
  1616.              you select the "Quit" option from the Modify submenu, you get
  1617.              an error message indicating the range name "DB" does not exist
  1618.              or is invalid, you will need to do the following:
  1619.  
  1620.                 - Press the "Esc" key to clear the error.
  1621.  
  1622.                 - Enter the command:
  1623.  
  1624.                     /Range Name Create <DB> <ENTER>
  1625.  
  1626.                   When it asks for a range, use the direction keys to
  1627.                   highlight the entire transaction database, including the
  1628.                   field names (Date, Tran#, Descr, etc.).  The reason this
  1629.                   is necessary is because when you select this "Quit"
  1630.                   option, the macros go through the following steps:
  1631.  
  1632.                     - Clear titles and move cell pointer to upper left
  1633.                       corner of the named range, "DB".  This should place
  1634.                       the cell pointer in cell containing the field name,
  1635.                       "Date".
  1636.  
  1637.                     - Deletes the range name, "DB".
  1638.  
  1639.                     - Re-creates the range name, "DB", and assigns it a
  1640.                       range encompassing the entire transaction database.
  1641.  
  1642.    2  Query Options
  1643.  
  1644.    Purpose:  Use to view selected transactions from the database.
  1645.  
  1646.    Menu Structure:
  1647.  
  1648.  
  1649.                                       Page 20
  1650.  
  1651.  
  1652.  
  1653.  
  1654.          2.1 Account
  1655.          2.2 Date_Range
  1656.          2.3 Both
  1657.          2.4 Freeform
  1658.          2.5 Scan
  1659.          2.6 Print
  1660.          2.7 Help
  1661.          2.8 Quit
  1662.  
  1663.    2.1  Account
  1664.  
  1665.    Purpose:  Use to view all transactions in the database for a given
  1666.              account number.  Also displays the total of all transactions
  1667.              for the account number in the upper right corner of the
  1668.              screen.
  1669.  
  1670.    Action:   After selecting the option, type in the account number and
  1671.              press the ENTER key.
  1672.  
  1673.    2.2  Date_Range
  1674.  
  1675.    Purpose:  Use to view all transactions in the database for a given time
  1676.              period.
  1677.  
  1678.    Action:   After selecting this option, new headings will appear on the
  1679.              screen indicating the current date range.  A menu will appear
  1680.              that lets you use the current date range or enter a new one.
  1681.              (Remember that date ranges are always inclusive.) If you elect
  1682.              to change the date range, you will be asked to enter the year,
  1683.              month, and day in numeric format for both the beginning and
  1684.              ending dates.  This date range will be remembered the next
  1685.              time you do any operation that requires a date range to be
  1686.              entered.
  1687.  
  1688.    2.3  Both
  1689.  
  1690.    Purpose:  Use to view all transactions entered in the database for a
  1691.              given account number for a given time period.  (Example: to
  1692.              display all transactions for account number 777 for the month
  1693.              of May.)
  1694.  
  1695.    Action:   After selecting this option, new headings will appear on the
  1696.              screen indicating the current date range.  A menu will appear
  1697.              that lets you use the current date range or enter a new one.
  1698.              (Remember that date ranges are always inclusive.) If you elect
  1699.              to change the date range, you will be asked to enter the year,
  1700.              month, and day in numeric format for both the beginning and
  1701.              ending dates.  This date range will be remembered the next
  1702.              time you do any operation that requires a date range to be
  1703.              entered.  After selecting an option from this date menu, you
  1704.              will be asked to enter and account number.
  1705.  
  1706.    2.4  Freeform
  1707.  
  1708.    Purpose:  Use to view selected transactions from the database based on
  1709.              your own criteria.  Should be used by experienced users only,
  1710.              and even they should save their work to disk before messing
  1711.              with this one.
  1712.  
  1713.  
  1714.  
  1715.                                       Page 21
  1716.  
  1717.  
  1718.  
  1719.    Action:   All Data Query Extract parameters have been predefined so that
  1720.              all you have to do is enter the criteria under the appropriate
  1721.              field name and press the Query key (F7).  Can also be used to
  1722.              delete a selected group of transactions from the database by
  1723.              entering the /Data Query Delete command after setting up the
  1724.              appropriate criteria.  (Caution is advised).  Press Alt-Q to
  1725.              return to the Query submenu.
  1726.  
  1727.    2.5  Scan
  1728.  
  1729.    Purpose:  Use to move cell pointer in order to view transactions that do
  1730.              not fit on the screen after an extract.
  1731.  
  1732.    Action:   After selecting this option, you will be free to move around
  1733.              the cell pointer.  To return to the Query submenu, simply
  1734.              press the ENTER key as indicated on the screen.
  1735.  
  1736.  
  1737.    2.6  Print
  1738.  
  1739.    Purpose:  Use to print the current contents of the Query section (the
  1740.              results of the latest Query Extract).
  1741.  
  1742.    Action:   After selecting this option, align the printer paper and press
  1743.              ENTER as instructed.  See Appendix C for a sample printout of
  1744.              this report.
  1745.  
  1746.    2.7  Help
  1747.  
  1748.    Purpose:  Use to view the on-line help screens for the Query menu
  1749.              options.
  1750.  
  1751.    Action:   After selecting this option, simply press the ENTER key until
  1752.              you have been returned to the Query submenu.
  1753.  
  1754.    2.8  Quit
  1755.  
  1756.    Purpose:  Use to return to the main menu.
  1757.  
  1758.    3  Summarize Options
  1759.  
  1760.    Purpose: Use to summarize transactions by account number.
  1761.  
  1762.    Menu Structure:
  1763.  
  1764.          3.1 All
  1765.          3.2 Date_Range
  1766.          3.3 Xtract
  1767.          3.4 Scan
  1768.          3.5 Print
  1769.                3.5.1 Summary
  1770.                3.5.2 Account
  1771.                3.5.3 Date_Range
  1772.                3.5.4 Quit
  1773.          3.6 Help
  1774.          3.7 Quit
  1775.  
  1776.    3.1  All
  1777.  
  1778.    Purpose:   Use to summarize all transactions in the database by account
  1779.  
  1780.  
  1781.                                       Page 22
  1782.  
  1783.  
  1784.  
  1785.               number.  Creates a list of account numbers based on the
  1786.               account numbers used in the transactions.  Every unique
  1787.               account number entered in the database is included in the
  1788.               list.  After obtaining this list, the total of all
  1789.               transaction amounts for each account number is calculated and
  1790.               displayed to its right.  The total of all transactions in the
  1791.               database is displayed in the upper right hand corner of the
  1792.               screen.
  1793.  
  1794.    Action:   After selecting this option, wait a few moments, the
  1795.              calculations will be completed automatically, and you will be
  1796.              returned to the Summarize submenu.
  1797.  
  1798.    3.2  Date_Range
  1799.  
  1800.    Purpose:   Use to summarize all transactions in the database by account
  1801.               number for a specified time period.  This allows you to enter
  1802.               transactions for multiple time periods into a single database
  1803.               and still obtain individual summaries.  Creates a list of
  1804.               account numbers based on the account numbers used in the
  1805.               transactions.  Every unique account number entered in the
  1806.               database is included in the list.  After obtaining this list,
  1807.               the total of all transaction amounts for each account number,
  1808.               for the specified date range, is calculated and displayed to
  1809.               its right.  The total of all transactions in the database is
  1810.               displayed in the upper right hand corner of the screen.
  1811.  
  1812.    Action:   After selecting this option, a date range will appear on the
  1813.              right side of the screen.  A menu will appear giving the
  1814.              option of either changing them or proceeding with them as is.
  1815.              If you elect to change these dates, you will have to enter
  1816.              beginning and ending years, months, and days, in numeric
  1817.              format.  After deciding which way to go with the date range,
  1818.              the calculations will be performed automatically, and you will
  1819.              be returned to the Summarize submenu.
  1820.  
  1821.    3.3  Xtract
  1822.  
  1823.    Purpose:  Extracts the results of the last summarize operation to a
  1824.              separate worksheet file for use by a subsequent worksheet,
  1825.              such as a P&L report.  The design of the P&L has been left up
  1826.              to you, however, you will find a sample P&L included on the
  1827.              disk to give you some ideas on how to build your own.
  1828.  
  1829.    Action:   After selecting this option, the macros will suggest a file
  1830.              name that corresponds with the current month.  You have the
  1831.              option of editing or overriding this name.  Press the ENTER
  1832.              key after typing in the desired file name.  You will not be
  1833.              given a chance to cancel the command if a file exists with the
  1834.              same name.
  1835.  
  1836.    3.4  Scan
  1837.  
  1838.    Purpose:  To activate the direction keys allowing you to move the cell
  1839.              pointer around and thus view any summary information that
  1840.              doesn't fit on the screen.
  1841.  
  1842.    Action:   After selecting this option, the direction keys will be
  1843.              activated until the ENTER key is pressed.  Pressing ENTER
  1844.              returns you to the Summarize submenu.
  1845.  
  1846.  
  1847.                                       Page 23
  1848.  
  1849.  
  1850.  
  1851.  
  1852.    Notes:   If you wish to modify the summary data in any way, you will
  1853.             need to break out of the macros by pressing the BREAK key.
  1854.             This is done by holding down the "Ctrl" key and tapping the
  1855.             "Scroll Lock" key.  After doing this, press Alt-Z to return to
  1856.             the macro menus.
  1857.  
  1858.    3.5  Print
  1859.  
  1860.    Purpose:  Calls up a submenu allowing you to print various summary
  1861.              reports.  See Appendix C for more information on Printing
  1862.              Reports.
  1863.  
  1864.    3.5.1  Summary
  1865.  
  1866.    Purpose:  Prints the current contents of the summary section.
  1867.  
  1868.    Action:   After selecting this option, align printer paper and press the
  1869.              ENTER key to start the printing process.
  1870.  
  1871.    3.5.2  Account
  1872.  
  1873.    Purpose:  To produce a report that includes each account numbers balance
  1874.              and a listing of the transactions that make up that balance.
  1875.              "Commonly referred to as a G/L listing".  See Appendix C for a
  1876.              sample printout of this report.
  1877.  
  1878.    Action:   After selecting this option, align printer paper and press the
  1879.              ENTER key to start the printing process.
  1880.  
  1881.    3.5.3  Date_Range
  1882.  
  1883.    Purpose:  To produce a report that includes each account number's
  1884.              balance and a listing of the transactions that make up that
  1885.              balance for a specified time period.  Accounts with no
  1886.              transactions for the time period are not included in this
  1887.              report.  Commonly referred to as a G/L listing.  See Appendix
  1888.              C for a sample printout of this report.
  1889.  
  1890.    Action:   After selecting this option, a date range will be displayed on
  1891.              the screen and a menu will be displayed allowing you to use
  1892.              them as is, or change them.  If you leave them unchanged, you
  1893.              will be asked to align printer paper and press the ENTER key
  1894.              to start the printing process.  If you elect to change them,
  1895.              you must enter both the beginning and ending year, month, and
  1896.              day in numeric format.  After completing this, align the
  1897.              printer paper and press the ENTER key as indicated.
  1898.  
  1899.    3.5.4  Quit
  1900.  
  1901.    Purpose:  Returns you to the Summarize submenu.
  1902.  
  1903.  
  1904.    3.6  Help
  1905.  
  1906.    Purpose:  Use to display the help screens for the "Summarize Database"
  1907.              menu options.
  1908.  
  1909.    Action:   After selecting this option, simply press the ENTER key until
  1910.              you have been returned to the Summarize submenu.
  1911.  
  1912.  
  1913.                                       Page 24
  1914.  
  1915.  
  1916.  
  1917.  
  1918.    3.7  Quit
  1919.  
  1920.    Purpose:  Returns you to the main menu.
  1921.  
  1922.    4  Cash Flow Summary Options
  1923.  
  1924.    Purpose:  Use to produce cash flow and daily balance summaries in both
  1925.              printed and graphic form.
  1926.  
  1927.    Menu Structure:
  1928.  
  1929.          4.1 Calculate
  1930.          4.2 Graph
  1931.              4.2.1 Cash_Flow
  1932.              4.2.2 Daily_Balance
  1933.              4.2.3 Save
  1934.              4.2.4 Quit
  1935.          4.3 Date
  1936.          4.4 Scan
  1937.          4.5 Print
  1938.          4.6 Help
  1939.          4.7 Quit
  1940.  
  1941.    4.1  Calculate
  1942.  
  1943.    Purpose:  Use to calculate the daily cash flow and daily balance figures
  1944.              upon which the graphs are based.  Calculations are performed
  1945.              for the current month, which is indicated in the upper right
  1946.              hand corner of the screen.  The current month can be changed
  1947.              from the "4.3 Date" option.
  1948.  
  1949.    Action:   After selecting this option, you will be prompted for a
  1950.              beginning balance.  Enter a 0 if this has already been entered
  1951.              in the database as a transaction.  These calculations are
  1952.              complex and can take from 15 seconds to several minutes
  1953.              depending on the number of transactions entered in the
  1954.              database.
  1955.  
  1956.    4.2  Graph
  1957.  
  1958.    Purpose:  Use to graphically summarize the daily cash flow and balance
  1959.              figures produced by the "4.1 Calculate" option.
  1960.  
  1961.    4.2.1  Cash_Flow
  1962.  
  1963.    Purpose:  Use to view a line graph of the daily cash flow for the
  1964.              current month.
  1965.  
  1966.    Action:   Graph appears almost instantly after selecting the option.
  1967.              Press any key to remove the graph from the screen and return
  1968.              to the Graph submenu.
  1969.  
  1970.    Notes:    Macros call up the named graph settings "CASHFLOW".
  1971.  
  1972.    4.2.2  Daily_Balance
  1973.  
  1974.    Purpose:  Use to view a line graph of the daily cash balance for the
  1975.              current month.
  1976.  
  1977.  
  1978.  
  1979.                                       Page 25
  1980.  
  1981.  
  1982.  
  1983.    Action:   Graph appears almost instantly after selecting the option.
  1984.              Press any key to remove the graph from the screen and return
  1985.              to the Graph submenu.
  1986.  
  1987.    Notes:    Macros call up the named graph settings "BALANCE".
  1988.  
  1989.    4.2.3  Save
  1990.  
  1991.    Purpose:  Saves a picture of the last graph displayed on the screen to a
  1992.              PIC file for printing by the 1-2-3 PrintGraph program.
  1993.  
  1994.    Action:   After selecting this option, enter a file name and press
  1995.              ENTER.  After the save, you will be returned to the Graph
  1996.              submenu.
  1997.  
  1998.    4.2.4  Quit
  1999.  
  2000.    Purpose:  Returns you to the Cash Flow submenu.
  2001.  
  2002.    4.3  Date
  2003.  
  2004.    Purpose:  Use to change the current month and date for which to
  2005.              calculate the cash flow and balance figures.  Has the same
  2006.              affect as the menu options; "1.4 Date" and "5.2 Date"
  2007.  
  2008.    Action:   You must enter the year and month in numeric format as
  2009.              prompted.
  2010.  
  2011.    4.4  Scan
  2012.  
  2013.    Purpose:  To activate the direction keys allowing you to move the cell
  2014.              pointer around and thus view any cash flow information that
  2015.              doesn't fit on the screen.
  2016.  
  2017.    Action:  After selecting this option, the direction keys will be
  2018.             activated until the ENTER key is pressed.  Pressing ENTER
  2019.             returns you to the Cash Flow submenu.
  2020.  
  2021.    4.5  Print
  2022.  
  2023.    Purpose:  Prints a copy of the Cash Flow Summary section.
  2024.  
  2025.    Action:   After selecting this option, simply align printer paper and
  2026.              press the ENTER key as instructed.  See Appendix C for a
  2027.              sample printout of this report.
  2028.  
  2029.    4.6  Help
  2030.  
  2031.    Purpose:  Use to display the help screens for the "Cash Flow Summary"
  2032.              menu options.
  2033.  
  2034.    Action:   After selecting this option, simply press the ENTER key until
  2035.              you have been returned to the Cash Flow Summary submenu.
  2036.  
  2037.    4.7  Quit
  2038.  
  2039.    Purpose:  Returns you to the main menu
  2040.  
  2041.    5  Setup Options
  2042.  
  2043.  
  2044.  
  2045.                                       Page 26
  2046.  
  2047.  
  2048.  
  2049.    Purpose:  Use these options to set up The CashFlow Ledger for your
  2050.              business.
  2051.  
  2052.    Menu Structure:
  2053.  
  2054.          5.1 Recur_Trans
  2055.              5.1.1 Add/Edit
  2056.              5.1.2 Print
  2057.              5.1.3 Help
  2058.              5.1.4 Quit
  2059.          5.2 Date
  2060.          5.3 Init
  2061.          5.4 Formfix
  2062.          5.5 EraseHelp
  2063.          5.6 X/C
  2064.              5.6.1 Expand_Query
  2065.              5.6.2 Expand_Summary
  2066.              5.6.3 Contract_Query
  2067.              5.6.4 Contract_Summary
  2068.              5.6.5 Quit
  2069.          5.7 Help
  2070.          5.8 Quit
  2071.  
  2072.    5.1  Recur_Trans
  2073.  
  2074.    Purpose:  Use to set up transactions that are entered repeatedly during
  2075.              the month or between months.
  2076.  
  2077.    5.1.1  Add/Edit
  2078.  
  2079.    Purpose:  Use to set up the Recurring transactions so they can be easily
  2080.              incorporated into the transaction database when needed.
  2081.  
  2082.    Action:   Recurring transactions are set up in groups as follows:
  2083.  
  2084.               1) Enter a description of the transaction group in column A.
  2085.                  This description must be entered as a Label and begin with
  2086.                  the "*" character.  The "*" flags it for inclusion in the
  2087.                  listing of recurring transaction descriptions produced by
  2088.                  the Alt-L macro.  It's a good idea to include in this
  2089.                  description the named range to be assigned to the
  2090.                  transaction group.  The named range is what you will be
  2091.                  expected to remember when it comes time to add a group of
  2092.                  recurring transactions to the database.
  2093.  
  2094.               2) Use the Alt-T macro to enter the transactions as you would
  2095.                  like them copied into the transaction database each time
  2096.                  they are to be used.  Alt-T enters the date in a special
  2097.                  format that ties it to the current month and year.  The
  2098.                  other macros function the same as Alt-A.
  2099.  
  2100.               3) Use 1-2-3's /Range Name Create command to assign a name to
  2101.                  the entire group of transactions.  You must be careful
  2102.                  here not to use a range name currently in use by The
  2103.                  CashFlow Ledger's macros.  If when you enter the range
  2104.                  name and press return, the cell pointer jumps to some
  2105.                  other location in the worksheet, halt the operation
  2106.                  immediately by pressing Ctrl-Break.  We recommend the use
  2107.                  of numbers for names.  In other words, assign the first
  2108.                  group of transactions the name "1", the second, "2", and
  2109.  
  2110.  
  2111.                                       Page 27
  2112.  
  2113.  
  2114.  
  2115.                  so on.
  2116.  
  2117.              Once you have done this for each group of recurring
  2118.              transactions, press Alt-N to return to the Recur_Trans menu.
  2119.  
  2120.  
  2121.    5.1.2  Print
  2122.  
  2123.    Purpose:  Use to print a listing of the recurring transaction section.
  2124.  
  2125.    Action:   After selecting this option, align printer paper and press the
  2126.              ENTER key.
  2127.  
  2128.    5.1.3  Help
  2129.  
  2130.    Purpose:  Use to display the help screens for the "Recur_Trans" menu
  2131.              options.
  2132.  
  2133.    Action:   After selecting this option, simply press the ENTER key until
  2134.              you have been returned to the Recur_Trans submenu.
  2135.  
  2136.    5.1.4  Quit
  2137.  
  2138.    Purpose:  Returns you to Setup submenu
  2139.  
  2140.  
  2141.    5.2  Date
  2142.  
  2143.    Purpose:  Use to change the current month and date for either
  2144.              transaction entry or cash flow summarization purposes.  Has
  2145.              the same affect as the menu options; "1.4 Date" and "4.3
  2146.              Date".
  2147.  
  2148.    Action:   You must enter the year and month in numeric format as
  2149.              prompted.
  2150.  
  2151.    5.3  Init
  2152.  
  2153.    Purpose:  Use to initialize all data areas in the application.  Deletes
  2154.              all transactions in database and erases all data in the Query,
  2155.              Summary, and Cash Flow Summary sections.  Recurring
  2156.              transactions are not erased.  To remove them, use 1-2-3's
  2157.              /Range Erase command while within the "5.1.1 Add/Edit option"
  2158.              and delete the associated range name with 1-2-3's /Range Name
  2159.              Delete command.
  2160.  
  2161.    Action:   After selecting this option, you will be given one last chance
  2162.              to cancel it.  If you do not, the data will be erased and you
  2163.              will be asked to enter the first transaction in the database
  2164.              before returning to the Setup submenu.  The first transaction
  2165.              is necessary for the macros to work correctly.
  2166.  
  2167.    5.4  Formfix
  2168.  
  2169.    Purpose:  Occasionally, while working with this application, you may do
  2170.              things which disrupt some of the formulas causing them to
  2171.              display "ERR".  If this ever happens, select this option and
  2172.              they will be restored automatically.  This process only takes
  2173.              a few seconds because most of the formulas used in The
  2174.              CashFlow Ledger are stored as labels, and converted to
  2175.  
  2176.  
  2177.                                       Page 28
  2178.  
  2179.  
  2180.  
  2181.              formulas only when needed.  This also saves memory and speeds
  2182.              up recalculation time.
  2183.  
  2184.    Action:   Just select the option and wait a moment.
  2185.  
  2186.    5.5  EraseHelp
  2187.  
  2188.    Purpose:  Use to erase the on-line help screens from the copy of The
  2189.              CashFlow Ledger currently in memory.  Saves approximately 15k
  2190.              of memory and 15k of disk space when the application is saved
  2191.              to disk.  See option "6.7 Print" for information on printing
  2192.              these help screens.
  2193.  
  2194.    Action:   After selecting this option, you are given one last chance to
  2195.              cancel the command.  Select No to prevent the screens from
  2196.              being erased, or Yes to go ahead and erase them.
  2197.  
  2198.    5.6  X/C
  2199.  
  2200.    Purpose:  Displays a submenu of options for expanding or contracting the
  2201.              Query and Summary sections.  The size of these sections
  2202.              determines the number of transactions you may enter for an
  2203.              account number and the number of account numbers you may use
  2204.              in the transaction database.
  2205.  
  2206.    5.6.1  Expand_Query
  2207.  
  2208.    Purpose:  Use to expand the area for extracting selected records from
  2209.              the transaction database by 10 rows.  The more room you make
  2210.              here, the more transactions you may enter for a single account
  2211.              number.  Having enough space here is not a requirement for the
  2212.              summarize options "3.1 All" or "3.2 Date_Range" to work
  2213.              correctly.  However, the printing options, "3.5.2 Account" and
  2214.              "3.5.3 Date_Range" use this area when printing the
  2215.              transactions that make up each accounts balance.
  2216.  
  2217.    Action:   Simply select the option.  Everything including range names
  2218.              are adjusted automatically.
  2219.  
  2220.    5.6.2  Expand_Summary
  2221.  
  2222.    Purpose:  Use to expand by 10 rows, the area used for summarizing
  2223.              transactions by account number.  The more room you make here,
  2224.              the more account numbers you can summarize by. As shipped, The
  2225.              CashFlow Ledger can summarize by up to 50 account numbers.  In
  2226.              other words, there are 50 rows in the Summary section for
  2227.              listing this information.
  2228.  
  2229.    Action:  Simply select the option.  Everything including range names are
  2230.             adjusted automatically.
  2231.  
  2232.    5.6.3  Contract_Query
  2233.  
  2234.    Purpose:  Use to contract the area for extracting selected records from
  2235.              the transaction database by 10 rows.  The less room you make
  2236.              here, the fewer transactions you may enter for a single
  2237.              account number.  Having enough space here is not a requirement
  2238.              for the summarize options "3.1 All" or "3.2 Date_Range" to
  2239.              work correctly.  However, the printing options, "3.5.2
  2240.              Account" and "3.5.3 Date_Range" use this area when printing
  2241.  
  2242.  
  2243.                                       Page 29
  2244.  
  2245.  
  2246.  
  2247.              the transactions that make up each accounts balance.
  2248.  
  2249.    Action:   Simply select the option.  Everything including range names
  2250.              are adjusted automatically.
  2251.  
  2252.    5.6.4  Contract_Summary
  2253.  
  2254.    Purpose:  Use to delete 10 rows out of the area used for summarizing
  2255.              transactions by account number.  The less room you make here,
  2256.              the fewer account numbers you can summarize by. As shipped,
  2257.              The CashFlow Ledger can summarize by up to 50 account numbers.
  2258.              In other words, there are 50 rows in the Summary section for
  2259.              listing this information.
  2260.  
  2261.    Action:   Simply select the option.  Everything including range names
  2262.              are adjusted automatically.
  2263.  
  2264.    5.6.5  Quit
  2265.  
  2266.    Purpose:  Returns you to the Setup submenu
  2267.  
  2268.    5.7  Help
  2269.  
  2270.    Purpose:  Use to display the help screens for the "Setup" menu options.
  2271.  
  2272.    Action:   After selecting this option, simply press the ENTER key until
  2273.              you have been returned to the Setup submenu.
  2274.  
  2275.  
  2276.    5.8  Quit
  2277.  
  2278.    Purpose:  Returns you to the main menu.
  2279.  
  2280.    6  On-line Help
  2281.  
  2282.    Purpose:  To give you quick answers to the most common questions that
  2283.              arise while using each of the options.  Each major menu option
  2284.              has it's own set of help screens which can be accessed via
  2285.              this menu option, or by selecting the "Help" option that
  2286.              appears in each of the menus.  To continue through the help
  2287.              screens simply press the ENTER key as instructed.  If for some
  2288.              reason the macros are de-activated, hold down the "Alt" key
  2289.              and tap the "Z" key to return to the main CashFlow Ledger
  2290.              menu.  The "6.7 Print" option has been set up for the curious
  2291.              who would like to see a complete printout of the 14 help
  2292.              screens.  The "5.5 EraseHelp" option has been set up for those
  2293.              who have mastered the use of this application and no longer
  2294.              need them resident in memory.
  2295.  
  2296.    7  Save Options
  2297.  
  2298.    Purpose:  Use to save a copy of The CashFlow Ledger as it currently
  2299.              exists in memory, to a disk file or to change the directory to
  2300.              which the file will be saved.
  2301.  
  2302.    Menu Structure:
  2303.  
  2304.          7.1 Save
  2305.          7.2 Directory
  2306.          7.3 Quit
  2307.  
  2308.  
  2309.                                       Page 30
  2310.  
  2311.  
  2312.  
  2313.  
  2314.    7.1  Save
  2315.  
  2316.    Purpose:  Use to save your work to disk for permanent storage.  Remember
  2317.              that you can create new versions of The CashFlow Ledger simply
  2318.              by saving it to a different file name.  Also remember that
  2319.              when you load The CashFlow Ledger into memory, you are only
  2320.              working with a copy what was loaded from the disk.  You do not
  2321.              change the version sitting on the disk until you save the
  2322.              application back to disk using the same file name.
  2323.              Understanding this fact is an important step in learning to
  2324.              experiment with The CashFlow Ledger.
  2325.  
  2326.              Note that this option saves both data and macros to a file
  2327.    whereas the "1.5.1 Xtract" command saves only the data to the file.
  2328.  
  2329.    Action:   After selecting the option, a message will appear on the
  2330.              screen reminding you to press Alt-Z to return to the main menu
  2331.              AFTER the file save process has been completed.  You press
  2332.              ENTER once to acknowledge, the message will disapear, and the
  2333.              original file name will be displayed as the save name.  To use
  2334.              it again, simply press the ENTER key.  You will be given a
  2335.              chance to Cancel or Replace if the file name already exists on
  2336.              the disk in the default drive.
  2337.  
  2338.              To create a new file, just type in a new file name over the
  2339.              old one and press ENTER.  If you happen to type in a name
  2340.              already in use, you will be given a chance to "Cancel" the
  2341.              command, or "Replace" the old file with the new.
  2342.  
  2343.    7.2  Directory
  2344.  
  2345.    Purpose:  Use to change the directory to which the file will be saved.
  2346.  
  2347.    Action:   After selecting this option, simply type in the new directory
  2348.              over the old and press the ENTER key.
  2349.  
  2350.    7.3  Quit
  2351.  
  2352.    Purpose:  Returns you to the main menu.
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.  
  2366.  
  2367.  
  2368.  
  2369.  
  2370.  
  2371.  
  2372.  
  2373.  
  2374.  
  2375.                                       Page 31
  2376.  
  2377.  
  2378.  
  2379.  
  2380.    Appendix A
  2381.  
  2382.    Listing of Alt-Letter Macro Commands
  2383.  
  2384.  
  2385.  
  2386.    PURPOSE
  2387.  
  2388.    To serve as a quick reference guide to the various Alt-letter commands
  2389.    available throughout The CashFlow Ledger.
  2390.  
  2391.  
  2392.    NOTE
  2393.  
  2394.    You must be in READY mode, as indicated in the upper right hand corner
  2395.    of your screen, before executing any of these macros.
  2396.  
  2397.  
  2398.    TO EXECUTE
  2399.  
  2400.    To execute one of these macros, hold down the "Alt" key and tap the
  2401.    letter key indicated.
  2402.  
  2403.  
  2404.    THE MACRO COMMANDS
  2405.  
  2406.    Alt-A  Use to add transactions to the database.  Requires that you be in
  2407.           column B before it is executed.  When executed, you are prompted
  2408.           for the following information:
  2409.  
  2410.           Day # - The current month and year displayed in the upper left
  2411.                   corner of the screen are combined automatically with this
  2412.                   day number to enter the complete date of the transaction.
  2413.                   The current month and year can be changed by selecting
  2414.                   any of the "Date" options appearing in the various menus,
  2415.                   or by using the Alt-D macro while in Add/Edit mode.
  2416.  
  2417.           Tran# - Since this field is not used in any of the calculations,
  2418.                   you have total flexibility over how it is used.  You may
  2419.                   enter check numbers, journal entry numbers, or simply
  2420.                   ******'s if for example, you are entering "future"
  2421.                   transactions for cash flow projection purposes, where the
  2422.                   check numbers are not yet known.  It is not a required
  2423.                   entry and may be skipped by simply pressing the ENTER
  2424.                   key.
  2425.  
  2426.           Descr - A description of the transaction which may be up to 240
  2427.                   characters long.  Only 28 characters of this column will
  2428.                   be displayed due to the columns width, but it will still
  2429.                   be retained and can be viewed by editing the cell.
  2430.                   Again, this column is not used in any of the calculations
  2431.                   and therefore be skipped simply by pressing the ENTER
  2432.                   key.
  2433.  
  2434.           Acct# - An account number by which you would like to total a
  2435.                   group of transactions.  You must either develop your own
  2436.                   chart of accounts or use one of the sample chart of
  2437.                   accounts provided on the disk.  In either case, it is
  2438.                   essential that you enter the transactions in accordance
  2439.  
  2440.  
  2441.                                       Page 32
  2442.  
  2443.  
  2444.  
  2445.                   with your chart of accounts consistently.
  2446.  
  2447.           Amount- You decide how you want to enter transaction amounts.
  2448.                   There are many possible methods, but once established,
  2449.                   the method should be followed consistently.  If for
  2450.                   example, you wish to use The CashFlow Ledger as a General
  2451.                   Ledger system, debits could be entered as positive
  2452.                   numbers and credits as negative.  This way, you could
  2453.                   always tell if you were in balance by checking the
  2454.                   "Balance" in the upper right corner of the screen.  If
  2455.                   debits equal credits, this "Balance" should equal 0.  If
  2456.                   on the other hand, you decide to use The CashFlow Ledger
  2457.                   as a checkbook ledger, then deposits could be entered as
  2458.                   positive numbers and checks as negative numbers.  In this
  2459.                   case, the "Balance" will indicate your checkbook balance
  2460.                   and the 1.3 Balance option could be used to view your
  2461.                   balance on any previous date.  The CashFlow Ledger is
  2462.                   used frequently as simply a transaction summarizer.  If
  2463.                   you decide to go this way, you might consider entering
  2464.                   all deposits in one file and all checks in another to
  2465.                   avoid having to worry about entering positive and
  2466.                   negative numbers.
  2467.  
  2468.  
  2469.    Alt-C  Use as a short cut to jump you automatically to the "4.1
  2470.           Calculate" routine.  Prompts you for a beginning balance performs
  2471.           the calculations, and returns you to the Cash Flow Summary
  2472.           submenu.
  2473.  
  2474.    Alt-D  Use to change the current month and year for transaction entry.
  2475.           Should be used only while in Add/Edit mode.
  2476.  
  2477.    Alt-H  Takes you to a help screen listing information related to the
  2478.           Add/Edit option.  Pressing the ENTER key returns you to the
  2479.           Add/Edit option.
  2480.  
  2481.    Alt-L  Use to list descriptions of all recurring transactions you have
  2482.           set up using the "5.1 Recur_Trans" option.  You must follow the
  2483.           rules carefully when setting up these recurring transactions for
  2484.           the Alt-L macro to work.  Be sure and move to a blank area before
  2485.           executing this macro to avoid having the listing wipe out data.
  2486.           Use 1-2-3's Range Erase command to remove the listing after
  2487.           viewing.
  2488.  
  2489.  
  2490.    Alt-M  Returns you to the Modify submenu.  Normally used to return to
  2491.           the menus after selecting the "Add/Edit" option from the Modify
  2492.           submenu.
  2493.  
  2494.    Alt-N  Returns you to the Recur_Trans submenu.  Normally used to return
  2495.           to the menus after selecting the "Add/Edit" option from the
  2496.           Recur_Trans submenu.
  2497.  
  2498.    Alt-Q  Returns you to the Query Data submenu.  Normally used to return
  2499.           to the menus after selecting the "Freeform" option from the Query
  2500.           Data submenu.
  2501.  
  2502.    Alt-R  Use to copy in a set of recurring transactions as entered using
  2503.           the "5.1 Recur_Trans" option.  Prompts you for a the range name
  2504.           assigned to the set of transactions, then copies in the named
  2505.  
  2506.  
  2507.                                       Page 33
  2508.  
  2509.  
  2510.  
  2511.           range, and converts the dates from @DATE formulas to numbers.
  2512.           This last step prevents the dates from changing when the current
  2513.           month and year are changed.  This macro should be executed while
  2514.           in column B if the recurring transactions have been set up
  2515.           exactly as instructed.
  2516.  
  2517.    Alt-S  Use as a short cut to the Summarize submenu while in READY mode.
  2518.  
  2519.    Alt-Y  Use as a short cut to the "3.1 All" menu option while in READY
  2520.           mode.  This macro was included to maximize the "what-if"
  2521.           capabilities of the application.
  2522.  
  2523.    Alt-Z  Returns you to the main menu.  One of the primary uses of this
  2524.           macro is to return to the main menu after selecting the "7.2
  2525.           Save" option.
  2526.  
  2527.  
  2528.  
  2529.  
  2530.  
  2531.  
  2532.  
  2533.  
  2534.  
  2535.  
  2536.  
  2537.  
  2538.  
  2539.  
  2540.  
  2541.  
  2542.  
  2543.  
  2544.  
  2545.  
  2546.  
  2547.  
  2548.  
  2549.  
  2550.  
  2551.  
  2552.  
  2553.  
  2554.  
  2555.  
  2556.  
  2557.  
  2558.  
  2559.  
  2560.  
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573.                                       Page 34
  2574.  
  2575.  
  2576.  
  2577.  
  2578.    Appendix B
  2579.  
  2580.    CashFlow Ledger Range Name Listing
  2581.  
  2582.  
  2583.         1             B296..F298          |     DKEY         B450
  2584.         2             B301..F302          |     DT           F89
  2585.         ACT           C351                |     ENTER        A446
  2586.         ADD1ST        E182                |     ENTERBAL     F447
  2587.         ADDOPT        A46                 |     ERASEHELP    E190
  2588.         AKEY          E450                |     EXITOPT      A27
  2589.         AMTKEY        F450                |     FFMHDG       A103..F105
  2590.         BAL           F392                |     FILEOPT      B163
  2591.         BALANCE       F450..F2034         |     GRAPHOPT     B213
  2592.         BEGBAL        E247                |     HELP1        G1..G20
  2593.         CASHAREA      C255..E286          |     HELP10       H68..H87
  2594.         CASHCALC      A209                |     HELP11       H89..H108
  2595.         CASHCRIT1     B191..B192          |     HELP12       H110..H129
  2596.         CASHCRIT2     C191..C192          |     HELP13       H131..H150
  2597.         CASHDAYS      C255..C285          |     HELP14       H152..H171
  2598.         CASHFLOW      A243..F285          |     HELP15       H173..H192
  2599.         CASHFORM1     C201                |     HELP2        G68..G87
  2600.         CASHFORM2     C202                |     HELP3        G89..G108
  2601.         CASHFORMH1    D254                |     HELP4        G110..G129
  2602.         CASHFORMH2    E254                |     HELP5        G131..G150
  2603.         CASHFORMS     D254..E254          |     HELP6        G152..G171
  2604.         CASHOPT       A207                |     HELP7        G173..G192
  2605.         CASHTABLE     C254..E284          |     HELP8        G243..G262
  2606.         CDAYS         C204                |     HELP9        H1..H20
  2607.         COUNT         F88                 |     HELPOPT      A41
  2608.         CRIT2         E391..E392          |     HMONTH       B168
  2609.         CRITERIA      C132..C133          |     HOLD         B133
  2610.         D             F87                 |     HOLDMAIN     F178..F187
  2611.         DATA1         B451                |     INIT         C181
  2612.         DATECRIT      C191..C192          |     INP1         E392
  2613.         DATEINPUT     C199                |     INP2         E16
  2614.         DATEM1        B109                |     INP3         E16
  2615.         DATEM2        A72                 |     INP4         C133
  2616.         DATEM3        D72                 |     INPD1        B392
  2617.         DATEM4        D155                |     INPD2        D392
  2618.         DATER         F162                |     KEY          C340
  2619.         DAY           F85                 |     LASTOPT      A134
  2620.         DAY2          F86                 |     LASTOPT2     D134
  2621.         DB            B450..F465          |     LASTOPT3     C172
  2622.         DBLABELS      B395..F395          |     LOOP         B148
  2623.         DBSUMMARY     D188                |     LOOP1        C148
  2624.         DBTITLES      A446..A451          |     MAIN         D7
  2625.         DCA           C107                |     MAINOPT      A22
  2626.         DCRIT         C132..C133          |     MESSAGES     F169..F173
  2627.         DCRIT1        B106..B107          |     MHOLD1       D393
  2628.         DCRIT2        B106..C107          |     MHOLD2       C448
  2629.         DCRIT3        B392..F393          |     MHOLD3       D448..D449
  2630.         DCRIT5        D53..D54            |     MHOLD4       D337
  2631.         DESCKEY       D450                |     MHOLD5       C449
  2632.  
  2633.  
  2634.  
  2635.  
  2636.  
  2637.  
  2638.  
  2639.                                       Page 35
  2640.  
  2641.  
  2642.  
  2643.  
  2644.         MHOLD6        D290                |     SUMFORM1     B79
  2645.         MHOLD7        D448                |     SUMFORM2     B80
  2646.         MONTH         F84                 |     SUMFORM3     B81
  2647.         MSSG          D448..D449          |     SUMFORM4     B78
  2648.         MSSG1         F169..F170          |     SUMHDG       D106..D107
  2649.         MSSG2         F171                |     SUMMARY      A335..F350
  2650.         MSSG3         F172                |     SUMOPT       A57
  2651.         MSSG4         F173                |     SUMTBL       C340..C390
  2652.         MSSG5         F174                |     TABLE        C339..D350
  2653.         MSSG8         F175                |     TITLES       B446..G428
  2654.         MSSG9         F176                |     TKEY         C450
  2655.         NOTICE        B5..B18             |     UNIQUE       C339
  2656.         OUTPUT        C339..B390          |     XCOPT        B227
  2657.         OUTPUT2       B395..F445          |     XFILE        B156
  2658.         PRINTHELP     F190                |     XFILENAME    B169
  2659.         PRTOPT        B139                |     XFILENAME2   B159
  2660.         QDATE1        E79                 |     YEAR         F83
  2661.         QDATE2        E81                 |     \0           C120
  2662.         QDAY1         C83                 |     \A           C117
  2663.         QDAY2         C86                 |     \C           C129
  2664.         QHDG1         A99..F101           |     \D           C124
  2665.         QHDG2         A95..F97            |     \H           C131
  2666.         QHDG3         A91..F93            |     \L           F235
  2667.         QMONTH1       C84                 |     \M           C119
  2668.         QMONTH2       C87                 |     \N           C116
  2669.         QYEAR1        C85                 |     \Q           C123
  2670.         QYEAR2        C88                 |     \R           D235
  2671.         RECTRANS      A288..F334          |     \S           C125
  2672.         REVAMT1       F396                |     \T           F240
  2673.         REVCOUNT      F395..F445          |     \X           C118
  2674.         REVDATA       B396..F445          |     \Y           C127
  2675.         REVIEW        A391..F397          |     \Z           C121
  2676.         REVOPT        A64                 |
  2677.         REVPRT        E149                |
  2678.         RTCRIT        C234..C235          |
  2679.         RTDB          A293..A334          |
  2680.         RTLOOP        D239                |
  2681.         RTNAME        D237                |
  2682.         RTOPT         B221                |
  2683.         RTOUTPUT      F238                |
  2684.         SDATE1        G52                 |
  2685.         SDATE2        G53                 |
  2686.         SETOPT        A32                 |
  2687.         SETUPOPT      A32                 |
  2688.         SFILENAME     E30                 |
  2689.         SORTDB        B452..F465          |
  2690.         SORTOPT       A36                 |
  2691.         SUM           F111                |
  2692.         SUM2          E111                |
  2693.         SUMALL        A59                 |
  2694.         SUMBAL        F336                |
  2695.         SUMDATA       C340..D390          |
  2696.         SUMDATE       G51..H54            |
  2697.         SUMDR         E339..F342          |
  2698.         SUMFORM       D339                |
  2699.  
  2700.  
  2701.  
  2702.  
  2703.  
  2704.  
  2705.                                       Page 36
  2706.  
  2707.  
  2708.  
  2709.  
  2710.    Appendix C
  2711.  
  2712.    Summary of Reporting Options
  2713.  
  2714.  
  2715.    There are 8 different reports you can produce using The CashFlow
  2716.    Ledger's menu options.  Graphs can also be saved and printed via the
  2717.    Lotus 1-2-3 PrintGraph program.
  2718.  
  2719.    Keep in mind that the only print setting altered by the following menu
  2720.    options is the print Range.  If you need to enter special margins or
  2721.    setup strings, you need only do it once, save the modified version of
  2722.    The CashFlow Ledger to a disk file, and they will remain intact for
  2723.    that version.
  2724.  
  2725.  
  2726.    The following summarizes the printing options available in The CashFlow
  2727.    Ledger.
  2728.  
  2729.    1.5 Print
  2730.  
  2731.    Prints a listing of the entire database exactly as you see it from the
  2732.    Modify submenu.
  2733.  
  2734.    =Current Month=============================================Balance==
  2735.         Apr-85               Transaction Database               125.00
  2736.    ====================================================================
  2737.  
  2738.        DATE     TRAN #       DESCRIPTION         ACCOUNT        AMOUNT
  2739.     -------------------------------------------------------------------
  2740.      01-Apr-85       0 Beginning balance             100      1,500.00
  2741.      02-Apr-85     500 Rent                          630       (500.00)
  2742.      03-Apr-85     501 Telephone                     640       (100.00)
  2743.      05-Apr-85     504 Insurance                     650       (600.00)
  2744.      05-Apr-85     505 Office supplies               655        (75.00)
  2745.      05-Apr-85     502 Payroll                       625       (900.00)
  2746.      15-Apr-85     506 Office supplies               655       (125.00)
  2747.      21-Apr-85     509 Loan pymt - principal         220       (400.00)
  2748.      21-Apr-85     510 Loan pymt - interest          750       (300.00)
  2749.      22-Apr-85    2046 Consulting income             430        900.00
  2750.      22-Apr-85    2045 Computer sale proceeds        420      1,800.00
  2751.      25-Apr-85     508 Payroll                       625       (900.00)
  2752.      25-Apr-85     507 Office supplies               655       (100.00)
  2753.      29-Apr-85     511 Magee - CashFlow Ledger       655        (75.00)
  2754.    _____________________________________________________________________
  2755.  
  2756.  
  2757.    2.6 Print
  2758.  
  2759.    Prints a listing of the Query section exactly as you see it from the
  2760.    Query submenu.
  2761.  
  2762.    ============================================ACCOUNT   =====BALANCE==
  2763.      Transactions and Balance for account number     655       (375.00)
  2764.    ====================================================================
  2765.  
  2766.        DATE     TRAN #       DESCRIPTION         ACCOUNT        AMOUNT
  2767.      05-Apr-85     505 Office supplies               655        (75.00)
  2768.      15-Apr-85     506 Office supplies               655       (125.00)
  2769.  
  2770.  
  2771.                                       Page 37
  2772.  
  2773.  
  2774.  
  2775.      25-Apr-85     507 Office supplies               655       (100.00)
  2776.      29-Apr-85     511 Magee - CashFlow Ledger       655        (75.00)
  2777.    _____________________________________________________________________
  2778.  
  2779.  
  2780.  
  2781.    3.5.1 Summary
  2782.  
  2783.    Prints a listing of the Summary section exactly as you see it from the
  2784.    Summary submenu.
  2785.  
  2786.    =Current Month=============================================Balance==
  2787.         Apr-85           Summary by Account Number             (375.00)
  2788.    ====================================================================
  2789.  
  2790.                ACCOUNT                  AMOUNT
  2791.                --------------------------------
  2792.                    100                1,500.00
  2793.                    220                 (400.00)
  2794.                    420                1,800.00
  2795.                    430                  900.00
  2796.                    625               (1,800.00)
  2797.                    630                 (500.00)
  2798.                    640                 (100.00)
  2799.                    650                 (600.00)
  2800.                    655                 (375.00)
  2801.                    750                 (300.00)
  2802.    _____________________________________________________________________
  2803.  
  2804.  
  2805.    3.5.2 Account
  2806.  
  2807.    Produces a G/L Listing.  To be more specific, for each transaction
  2808.    currently appearing in the Summary section, it prints it's balance,
  2809.    along with all transactions that go to make up that balance.
  2810.  
  2811.    ============================================ACCOUNT   =====BALANCE==
  2812.      Transactions and Balance for account number     625       (500.00)
  2813.    ====================================================================
  2814.  
  2815.        DATE     TRAN #       DESCRIPTION         ACCOUNT        AMOUNT
  2816.      02-Apr-85     500 Rent                          630       (500.00)
  2817.  
  2818.  
  2819.    ============================================ACCOUNT   =====BALANCE==
  2820.      Transactions and Balance for account numbe      625     (1,800.00)
  2821.    ====================================================================
  2822.  
  2823.        DATE     TRAN #       DESCRIPTION         ACCOUNT        AMOUNT
  2824.      05-Apr-85     502 Payroll                       625       (900.00)
  2825.      25-Apr-85     508 Payroll                       625       (900.00)
  2826.  
  2827.  
  2828.    ============================================ACCOUNT   =====BALANCE==
  2829.      Transactions and Balance for account number     655       (375.00)
  2830.    ====================================================================
  2831.  
  2832.        DATE     TRAN #       DESCRIPTION         ACCOUNT        AMOUNT
  2833.      05-Apr-85     505 Office supplies               655        (75.00)
  2834.      15-Apr-85     506 Office supplies               655       (125.00)
  2835.  
  2836.  
  2837.                                       Page 38
  2838.  
  2839.  
  2840.  
  2841.      25-Apr-85     507 Office supplies               655       (100.00)
  2842.      29-Apr-85     511 Magee - CashFlow Ledger       655        (75.00)
  2843.    _____________________________________________________________________
  2844.  
  2845.  
  2846.    3.5.3 Date_Range
  2847.  
  2848.    Same as 3.5.2 Account except that it only includes transaction falling
  2849.    within a specified time period.
  2850.  
  2851.  
  2852.    4.2.3 Save
  2853.  
  2854.    Use to save a picture of the last graph viewed on the screen to a disk
  2855.    file for printing via the Lotus 1-2-3 PrintGraph program.
  2856.  
  2857.  
  2858.    4.5 Print
  2859.  
  2860.    Prints a listing of the Cash Flow Summary section exactly as you see it
  2861.    from the Cash Flow Summary submenu.
  2862.  
  2863.    =Current Month======================================================
  2864.         Apr-85                  Cash Flow Summary
  2865.    ====================================================================
  2866.  
  2867.                        Beginning Balance            0.00
  2868.                        Ending Balance               0.00
  2869.                        Average Balance            -83.33
  2870.                        High Balance              1500.00
  2871.                        Low Balance               -800.00
  2872.  
  2873.                     Day                   Cash   Balance
  2874.                     -----------------------------------------
  2875.                      1                 1500.00   1500.00
  2876.                      2                 -500.00   1000.00
  2877.                      3                 -100.00    900.00
  2878.                      4                    0.00    900.00
  2879.                      5                -1575.00   -675.00
  2880.                      6                    0.00   -675.00
  2881.                      7                    0.00   -675.00
  2882.                      8                    0.00   -675.00
  2883.                      9                    0.00   -675.00
  2884.                     10                    0.00   -675.00
  2885.                     11                    0.00   -675.00
  2886.                     12                    0.00   -675.00
  2887.                     13                    0.00   -675.00
  2888.                     14                    0.00   -675.00
  2889.                     15                 -125.00   -800.00
  2890.                     16                    0.00   -800.00
  2891.                     17                    0.00   -800.00
  2892.                     18                    0.00   -800.00
  2893.                     19                    0.00   -800.00
  2894.                     20                    0.00   -800.00
  2895.                     21                    0.00   -800.00
  2896.                     22                 2300.00   1500.00
  2897.                     23                    0.00   1500.00
  2898.                     24                    0.00   1500.00
  2899.                     25                -1300.00    200.00
  2900.                     26                    0.00    200.00
  2901.  
  2902.  
  2903.                                       Page 39
  2904.  
  2905.  
  2906.  
  2907.                     27                    0.00    200.00
  2908.                     28                    0.00    200.00
  2909.                     29                  -75.00    125.00
  2910.                     30                    0.00    125.00
  2911.    _____________________________________________________________________
  2912.  
  2913.  
  2914.    5.1.2 Print
  2915.  
  2916.    Prints a listing of the Recurring Transaction section exactly as you see
  2917.    it from the Recurring Transaction submenu.
  2918.  
  2919.    ====================================================================
  2920.      01-Apr-85               Recurring Transactions
  2921.    ====================================================================
  2922.  
  2923.        DATE     TRAN #       DESCRIPTION         ACCOUNT        AMOUNT
  2924.    *-------------------------------------------------------------------
  2925.  
  2926.    * Group # 1 - Transactions occuring every month
  2927.      02-Apr-85       1 Car Loan - principal pymt     210       (207.80)
  2928.      03-Apr-85       1 Car Loan - interest pymt      810        (56.79)
  2929.      03-Apr-85       2 Rent                          610       (360.00)
  2930.  
  2931.    * Group #2 - B&O Taxes
  2932.      06-Apr-85       6 State B&O                     624     (1,111.00)
  2933.      07-Apr-85       7 City B&O                      625     (1,111.11)
  2934.    _____________________________________________________________________
  2935.  
  2936.  
  2937.    6.7 Print
  2938.  
  2939.    Prints a copy of the on-line help screens.
  2940.  
  2941.  
  2942.  
  2943.  
  2944.  
  2945.  
  2946.  
  2947.  
  2948.  
  2949.  
  2950.  
  2951.  
  2952.  
  2953.  
  2954.  
  2955.  
  2956.  
  2957.  
  2958.  
  2959.  
  2960.  
  2961.  
  2962.  
  2963.  
  2964.  
  2965.  
  2966.  
  2967.  
  2968.  
  2969.                                       Page 40
  2970.  
  2971.  
  2972.  
  2973.  
  2974.    Appendix D
  2975.  
  2976.    Building The Account Summary Macro Routines
  2977.  
  2978.  
  2979.    The 123 Ledger is an advanced Lotus 1-2-3 macro application that was
  2980.    recently uploaded to The World of Lotus.  This article walks you through
  2981.    the construction of a simplified version of the macro routines used
  2982.    to summarize transactions by account number in The CashFlow Ledger.
  2983.  
  2984.    The techniques it discusses deal with some of the more advanced 1-2-3
  2985.    features such as @DSUM formulas, macros, and the Data Query, Data Table,
  2986.    and Data Sort commands.  The end result is a 1-2-3 application that will
  2987.    post over 1800 transactions to over 100 account numbers, by pressing a
  2988.    single keystroke.  And that's on a computer with only 256k of memory.
  2989.  
  2990.  
  2991.    How it all began
  2992.  
  2993.    Last February, the owner of a local CPA firm ask me if I knew a way to
  2994.    use 1-2-3 to post checks.  He didn't want anything complicated, just a
  2995.    fast way to enter checks into a database, and an even faster way to
  2996.    summarize the checks by account number.  The client he had in mind had
  2997.    several hundred transactions, and a few dozen account numbers.  After
  2998.    analyzing the techniques published in various trade journals for doing
  2999.    ledger applications, I concluded that none were appropriate for handling
  3000.    this number of transactions and accounts.
  3001.  
  3002.    A little experimenting uncovered a technique that used a combination of
  3003.    the Data Query Unique, Data Table 1, and Data Sort commands, in
  3004.    conjunction with a single @DSUM formula.  Using 1-2-3's macro
  3005.    capabilities, I was able to automate the process so that my client could
  3006.    post or summarize his transactions by pressing a single key.
  3007.  
  3008.  
  3009.    Overview
  3010.  
  3011.    The version of this ledger application that this article will guide you
  3012.    though has three main components, as illustrated in Figure 1.
  3013.  
  3014.            _____________
  3015.           |             |
  3016.           |  Macros     |
  3017.           |_____________|
  3018.           |             |
  3019.           |  Summary    |
  3020.           |_____________|
  3021.           |             |
  3022.           |  Database   |
  3023.           |_____________|
  3024.  
  3025.  
  3026.       _______________________________ Figure 1
  3027.  
  3028.  
  3029.    The two macro routines you will build in this article are \A and \S.  \A
  3030.    is used to speed up data entry, and the second, \S, summarizes the
  3031.    transactions by account number.  Before discussing the macros, we'll
  3032.    need to set up a little database.
  3033.  
  3034.  
  3035.                                       Page 41
  3036.  
  3037.  
  3038.  
  3039.  
  3040.  
  3041.    The Database
  3042.  
  3043.    My client didn't want to spend a lot of time entering these
  3044.    transactions.  In fact, all he wanted to enter was the date, account
  3045.    number, and amount.  Thus the database had only three fields, and looked
  3046.    something like Figure 2.
  3047.  
  3048.  
  3049.         ============================================
  3050.                    Transaction Database
  3051.         ============================================
  3052.  
  3053.                    Date    Account#      Amount
  3054.               01-Apr-84         630     (500.00)
  3055.               03-Apr-84         640     (100.00)
  3056.               05-Apr-84         625     (900.00)
  3057.               05-Apr-84         630     (600.00)
  3058.               05-Apr-84         655      (75.00)
  3059.               15-Apr-84         660     (125.00)
  3060.               22-Apr-84         420    1,800.00
  3061.               22-Apr-84         430      900.00
  3062.               22-Apr-84         630     (400.00)
  3063.               25-Apr-84         420    1,100.00
  3064.  
  3065.  
  3066.         ___________________________________________
  3067.  
  3068.         Figure 2
  3069.  
  3070.  
  3071.  
  3072.    You will need to set up this database in order to test the macro
  3073.    routines.  For the macro routines to work, you must set up your
  3074.    worksheet exactly as instructed.
  3075.  
  3076.    Begin by setting up the title section as shown in Figure 2.  Do this by
  3077.    entering the repeating label, "\=", in cells B79 thru E79, and B81 thru
  3078.    E81.  Then enter the label, "Transaction Database", in cell C80.
  3079.  
  3080.    You should adjust the widths of columns A, B, C, and D to 7, 14, 12, and
  3081.    12 respectively, using the Worksheet Column-Width Set command.
  3082.  
  3083.    Enter the field names, "Date", "Account#", and "Amount", in cells B83,
  3084.    C83, and D83 respectively.
  3085.  
  3086.    To speed up the entering of transactions, set up the following macro.
  3087.  
  3088.       B5: '@date(84,{?}){calc}~
  3089.       B6: '/rfd~~{right}
  3090.       B7: '{?}{right}
  3091.       B8: '{?}~/rf,2~~
  3092.       B9: '{down}{left}{left}
  3093.      B10: '/xg\A~
  3094.  
  3095.    Begin by entering the above labels in cells B5 through B10.  Then assign
  3096.    the range name, \A to cell B5 with the following command:
  3097.  
  3098.      /Range Name Create <\A> {Enter} <B5> {Enter}
  3099.  
  3100.  
  3101.                                       Page 42
  3102.  
  3103.  
  3104.  
  3105.  
  3106.    To add a transaction, just move the cell pointer to the Date column,
  3107.    hold down the Alt key, and tap the A key.
  3108.  
  3109.    The \A macro works as follows:
  3110.  
  3111.    The macro in cell B5 begins entering an @DATE formula and pauses {?} for
  3112.    the user to type in the month and day (such as 4,1 for the first
  3113.    transaction above), and press ENTER.  The macro then completes the @DATE
  3114.    formula, converts it to a number with a {calc}, and enters the number in
  3115.    the cell.
  3116.  
  3117.    Before moving on to the Account# column, the cell is changed to date
  3118.    format by the macro in cell B6.
  3119.  
  3120.    Cell B7 simply waits for the user to press the ENTER key and moves to
  3121.    the right one cell.
  3122.  
  3123.    Cell B8 again waits for the user to press enter, and then formats the
  3124.    cell punctuated(,) with two decimal places.
  3125.  
  3126.    Cell B9 positions the cell pointer for entering the next transaction.
  3127.  
  3128.    And finally, cell B10 loops back up to B5, and the macro is repeated.
  3129.    Control-Break can be used any time to break out of the loop.
  3130.  
  3131.  
  3132.    The Summary Macro (\S)
  3133.  
  3134.    This section shows you how to build a macro that will make the posting
  3135.    of the transactions in the database as easy as Alt-S.  The entire macro
  3136.    is listed in Figure 3.
  3137.  
  3138.  
  3139.  
  3140.    ============================================
  3141.                   Summary Macros
  3142.    ============================================
  3143.  
  3144.        \S /wgrm
  3145.           /xcNAME~
  3146.           /xcACCT#S~
  3147.           /xcCALC~
  3148.           /xcSORT~
  3149.           /wgra
  3150.           /xq
  3151.  
  3152.    NAME   {goto}DB~
  3153.           /rncDB~{esc}.{end}{right}{end}{down}~
  3154.           /xr
  3155.  
  3156.  
  3157.    ACCT#S {goto}SUMMARY~
  3158.           /reSUMDATA~
  3159.           /dqriDB~cCRIT~oOUTPUT~uq
  3160.           /xr
  3161.  
  3162.    CRIT   Account#
  3163.    INPUT
  3164.  
  3165.  
  3166.  
  3167.                                       Page 43
  3168.  
  3169.  
  3170.  
  3171.  
  3172.    CALC   {goto}TABLE~
  3173.           /rndTABLE~
  3174.           /rncTABLE~{left}{end}{down}
  3175.           {right}{end}{up}{right}~
  3176.           /dtr/dt1TABLE~INPUT~
  3177.           /xr
  3178.  
  3179.    SORT   {down}
  3180.           /dsrd.{right}{end}{down}~pKEY~A~g
  3181.           /xr
  3182.  
  3183.    ____________________________________________
  3184.  
  3185.    Figure 3
  3186.  
  3187.  
  3188.  
  3189.    This macro has five main parts; the main macro(\S), and and four
  3190.    sub-macros(NAME, ACCT#S, CALC, AND SORT).  CRIT and INPUT are used by
  3191.    the CALC macro to calculate the balances for each account, as will be
  3192.    explained later.  We will begin by building the main macro and then go
  3193.    on to build each subroutines it calls.
  3194.  
  3195.  
  3196.    The Main Macro - \S
  3197.  
  3198.    Begin by entering the following labels in the designated cells.
  3199.  
  3200.      B12: '/wgrm
  3201.      B13: '/xcNAME~
  3202.      B14: '/xcACCT#S~
  3203.      B15: '/xcCALC~
  3204.      B16: '/xcSORT~
  3205.      B17: '/wgra
  3206.      B18: '/xq
  3207.  
  3208.    Assign the range name \S to cell B12 with the following command.
  3209.  
  3210.     /Range Name Create <\S> {Enter} <B12> {Enter}
  3211.  
  3212.    Note that all of these macro routines could have been lumped into a
  3213.    single continuous macro.  It is a good programming habit, however, to
  3214.    divide large macros into smaller managable units, and then link them
  3215.    together with subroutine calls.  This to make them easier to debug, and
  3216.    much easier to explain.  The \S macro works as follows:
  3217.  
  3218.    B12: Simply sets recalculation to manual.  This speeds up the execution
  3219.    of the macro subroutines.
  3220.  
  3221.    B13: Calls a macro subroutine that re-assigns a range name to the
  3222.    database to include any new transactions that have been added.
  3223.  
  3224.    B14: Calls a macro subroutine that uses the Data Query Unique command to
  3225.    create a list of all the different account numbers used in the database.
  3226.    This becomes in effect, the new chart of accounts.
  3227.  
  3228.    B15: Calls a subroutine that uses this list of account numbers in
  3229.    conjunction with a single @DSUM formula to do a Data Table 1 analysis.
  3230.    The end result is that each accounts balance appears to the right of
  3231.  
  3232.  
  3233.                                       Page 44
  3234.  
  3235.  
  3236.  
  3237.    it's account number.
  3238.  
  3239.    B16: Calls a subroutine that sorts this list of account numbers and
  3240.    balances by account number, in ascending order.
  3241.  
  3242.    B17: Turns automatic recalc back on.
  3243.  
  3244.    B18: Terminates macro execution.  This is mainly a documentation step.
  3245.  
  3246.    Now that you've seen an overview of the \S macro, lets begin building
  3247.    the individual components.
  3248.  
  3249.  
  3250.    The NAME Subroutine
  3251.  
  3252.    Begin by entering the following labels in the designated cells.
  3253.  
  3254.      B20: '{goto}DB~
  3255.      B21: '/rncDB~{end}{right}{end}{down}~
  3256.      B22: '/xr
  3257.  
  3258.    Next, assign the name, NAME to cell B20 with the following command:
  3259.  
  3260.     /Range Name Create <NAME> {Enter} <B20> {Enter}
  3261.  
  3262.    Before this routine will work, you must assign a range name to the
  3263.    database.  You only have to do this once to get the macro working.  It
  3264.    does not have to be done every time you summarize.  The command to
  3265.    assign this name is:
  3266.  
  3267.    /Range Name Create <DB> {Enter} <B83.D93> {Enter}
  3268.  
  3269.    After the macro in cell B20 moves the cell pointer to the top of the
  3270.    database, B21 then recreates the range name to include all new
  3271.    transaction entries by using the {End} key.  Note that if a blank line
  3272.    is left in the database, this routine will not work.
  3273.  
  3274.  
  3275.    The remaining macros deal primarily with the Summary section of this
  3276.    application as shown in Figure 4.
  3277.  
  3278.  
  3279.       ============================================
  3280.                       Summary Area
  3281.       ============================================
  3282.  
  3283.                              Amount
  3284.                Account#
  3285.  
  3286.  
  3287.  
  3288.  
  3289.       ____________________________________________
  3290.  
  3291.        Figure 4
  3292.  
  3293.  
  3294.    Before building the remaining macros, you will need to set this section
  3295.    up as follows:
  3296.  
  3297.  
  3298.  
  3299.                                       Page 45
  3300.  
  3301.  
  3302.  
  3303.    Enter the repeating label \= in cells B46 thru E46 and cells B48 thru
  3304.    E48.
  3305.  
  3306.    Enter the label "Summary Section" in cell C47.
  3307.  
  3308.    Enter the label "Account#" in cell C51.
  3309.  
  3310.    Enter the label "Amount" in cell D50.
  3311.  
  3312.    This is a good time to save you work to disk if you haven't already done
  3313.    so.
  3314.  
  3315.  
  3316.    The ACCT#S Subroutine
  3317.  
  3318.    This routine uses the Data Query Unique command to create a list of the
  3319.    all the different account numbers used in the database.  The neat thing
  3320.    about this routine is that it eliminates the need to maintain a chart of
  3321.    accounts within the application.
  3322.  
  3323.    To build this subroutine, you must enter the labels shown below, set up
  3324.    a criterion range for the Data Query Unique command, and then create a
  3325.    few range names.
  3326.  
  3327.    Begin by entering the following labels in the designated cells.
  3328.  
  3329.      B25: '{goto}SUMMARY~
  3330.      B26: '/reSUMDATA~
  3331.      B27: '/dqriDB~cCRIT~oOUTPUT~uq
  3332.      B28: '/xr
  3333.  
  3334.    Assign the name, ACCT#S, to cell B25 with the following command:
  3335.  
  3336.    /Range Name Create <ACCT#S> {Enter} <B25> {Enter}
  3337.  
  3338.    To set up the criterian range, enter the label, "Account#" in cell B30.
  3339.    Then assign the name, "CRIT", to this range with the following command:
  3340.  
  3341.    /Range Name Create <CRIT>{Enter}<B30.B31>{Enter}
  3342.  
  3343.    This criteria range will also be used by the Data Table analysis routine
  3344.    that follows.  This is why the Account# field was used.
  3345.  
  3346.    You will also need to create the following range names for this macro to
  3347.    work (Note that the principal of always using range names in macros,
  3348.    rather than specific cell references, is strictly adhered to in this
  3349.    application.  It is absolutly essential that you master the named range
  3350.    concept if you want to become proficient with macros.)
  3351.  
  3352.           SUMMARY       A46
  3353.           OUTPUT        C51..C78
  3354.           SUMDATA       C52..D78
  3355.  
  3356.    (Note: A listing of all named ranges is included at the end of this
  3357.    article.)
  3358.  
  3359.    The ACCT#S routine works as follows:
  3360.  
  3361.    B25: Moves the cell pointer to the top of the Summary Section.
  3362.  
  3363.  
  3364.  
  3365.                                       Page 46
  3366.  
  3367.  
  3368.  
  3369.    B26: Erases all data from the Summary Section to make room for the new
  3370.    list of account numbers and balances.
  3371.  
  3372.    B27: Begins by clearing the Data Query settings (/dqr), and then sets up
  3373.    the input, criteria, and output ranges for the Data Query Unique.  DB is
  3374.    the name assigned to the transaction database by the NAME subroutine.
  3375.    CRIT is the name assigned to the criterion range (B30..B31).  Cell B31
  3376.    was left blank so no transactions will be screened out.  And OUTPUT is
  3377.    the name assigned to area where we want the list of account numbers to
  3378.    appear (C51..C78).
  3379.  
  3380.    Now we need a way to calculate the balance for each account number in
  3381.    this list.  That is where CALC comes in.
  3382.  
  3383.  
  3384.    The CALC Subroutine
  3385.  
  3386.    This routine is the heart of the entire application.  It is centered
  3387.    around a single @DSUM formula.  The steps you will go through to set up
  3388.    this routine are as follows:
  3389.  
  3390.         1) Enter @DSUM formula
  3391.         2) Set up Data Table macro; and
  3392.         3) Create range names used by the macro
  3393.  
  3394.    The @DSUM formula you need to enter in cell D51 is as follows:
  3395.  
  3396.         @DSUM(DB,2,CRIT)
  3397.  
  3398.    This just tells 1-2-3 to add up the numbers in the amount column for all
  3399.    database entries that meet the criteria.  You may recall, that in the
  3400.    previous section, we assigned the name CRIT to the range listed below:
  3401.  
  3402.      B30: 'Account#
  3403.      B31:
  3404.  
  3405.    With cell B31 blank, the above @DSUM formula will give us the total
  3406.    amount for all transactions in the database.  By plugging the different
  3407.    account numbers into cell B31, this @DSUM formula will tell us the
  3408.    totals for each account.
  3409.  
  3410.    Lotus 1-2-3 just happens to have a command that will take a list of
  3411.    entries, plug them one at a time into a designated cell, recalculate a
  3412.    formula that is dependant upon that designated cell, and place the
  3413.    result of the calculation just to the right of the entries in the list.
  3414.    In case you haven't already guessed, I'm referring to the Data Table 1
  3415.    command.
  3416.  
  3417.    To set up the macro routine, enter the following labels in the
  3418.    designated cells:
  3419.  
  3420.      B34: '{goto}TABLE~
  3421.      B35: '/rndTABLE~
  3422.      B36: '/rncTABLE~{left}{end}{down}
  3423.      B37: '{right}{end}{up}{right}~
  3424.      B38: '/dtr/dt1TABLE~INPUT~
  3425.      B39: '/xr
  3426.  
  3427.    Assign the name, CALC to cell B34 with the following command:
  3428.  
  3429.  
  3430.  
  3431.                                       Page 47
  3432.  
  3433.  
  3434.  
  3435.    /Range Name Create <CALC> {Enter} <B34> {Enter}
  3436.  
  3437.    The remaining two range names are necessary to do a data table analysis
  3438.    from within the macro.  The first name is TABLE, and it should be
  3439.    assigned to the range C51..D58.  This is the answer the macro will give
  3440.    to the first question asked by 1-2-3's Data Table 1 command (Enter Table
  3441.    Range:)
  3442.  
  3443.    The final name is INPUT, and it must be assigned to the cell in the
  3444.    criteria range (CRIT) B31.  This is the location where 1-2-3's Data
  3445.    Table command will copy each account number in the list.
  3446.  
  3447.    When executed, the CALC macro subroutine operates as follows:
  3448.  
  3449.    B34: Moves the cell pointer to the top of the Data Table range.
  3450.  
  3451.    B35: Deletes the range name TABLE.
  3452.  
  3453.    B36 & B37: Recreates the name TABLE to include the entire list of
  3454.    account numbers created by the latest Data Query Unique command, as
  3455.    issued in ACCT#S.  The direction keys find the bottom of the list by
  3456.    going around it, and coming up from the bottom.  This technique was used
  3457.    because I've found that users occassionally omit the account number from
  3458.    entries.  This creates a blank space in the list of account numbers.
  3459.  
  3460.    B38: Clears the Data Table settings (/dtr) to speed up processing, and
  3461.    then executes the Data Table 1 command that computes the totals for each
  3462.    account number as follows:
  3463.  
  3464.    The Data Table 1 command takes each account number in the first column
  3465.    of the table range(TABLE) and plugs it into the cell INPUT.  The @DSUM
  3466.    formula at the top of the TABLE range calculates the total amounts for
  3467.    all transactions that match the account number currently in the cell we
  3468.    called INPUT.  As each account number in TABLE is plugged into INPUT,
  3469.    the @DSUM formula is recalculated, and the result is placed in the
  3470.    column to the right of the account numbers in the range TABLE.
  3471.  
  3472.    I'll understand if that doesn't sink in the first time you read it.  If
  3473.    you have followed along step by step, however, you will have the
  3474.    opportunity to see this macro in action, and this should help shed some
  3475.    light on what's happening.
  3476.  
  3477.    Once we have the totals for all account numbers, the final step is to
  3478.    sort the list by account number.  This is the job of the SORT routine.
  3479.  
  3480.    You might want to save your work to disk again if you haven't done so
  3481.    recently.
  3482.  
  3483.  
  3484.    The SORT Routine
  3485.  
  3486.    You are coming down the home stretch now.  Begin building the SORT
  3487.    routine by entering the following labels:
  3488.  
  3489.      B41: {down}
  3490.      B42: /dsrd.{right}{end}{down}~pKEY~A~g
  3491.      B43: /xr
  3492.  
  3493.    Assign the name SORT to cell B41 with the following command:
  3494.  
  3495.  
  3496.  
  3497.                                       Page 48
  3498.  
  3499.  
  3500.  
  3501.    /Range Name Create <SORT> {Enter} <B41> {Enter}
  3502.  
  3503.    The only thing left to complete this routine is to assign the name KEY
  3504.    to some cell in column C. Do this with the following command:
  3505.  
  3506.    /Range Name Create <KEY> {Enter} <C55> {Enter}
  3507.  
  3508.    When executed, the SORT macro routine does the following:
  3509.  
  3510.    B41: Moves the cell pointer to the top of the range to be sorted.
  3511.  
  3512.    B42: Begins by clearing the Data Sort settings (/dsr).  Then it defines
  3513.    the Data-Range by anchoring the cell pointer at the current cell, moving
  3514.    right one cell, and then doing an {End} {Down} to reach the bottom of
  3515.    the list.  The Primary key is specified using the named range, KEY, set
  3516.    up earlier, and finally, the Sort is executed.
  3517.  
  3518.  
  3519.    Testing The Macro
  3520.  
  3521.    If you've set up the database, the summary section, and built all the
  3522.    macros, you are ready to test the application.  Before doing this, you
  3523.    might want to doublecheck you range names.  Figure 5 contains a table
  3524.    that will serve as a handy reference for this purpose.
  3525.  
  3526.    =============================================
  3527.             The 123 Ledger Range Names
  3528.    =============================================
  3529.  
  3530.           ACCT#S        B25
  3531.           CALC          B34
  3532.           CRIT          B30..B31
  3533.           DB            B83..D93
  3534.           INPUT         B31
  3535.           KEY           C51
  3536.           NAME          B20
  3537.           OUTPUT        C51..C78
  3538.           SORT          B41
  3539.           SUMDATA       C52..D78
  3540.           SUMMARY       A46
  3541.           TABLE         C51..D58
  3542.           \A            B5
  3543.           \S            B12
  3544.  
  3545.    _____________________________________________
  3546.  
  3547.    Figure 5
  3548.  
  3549.  
  3550.  
  3551.    If they all match up, give the macro a try by pressing Alt-S.  The
  3552.    resulting Summary section should correspond to Figure 6.  If not, make
  3553.    sure that the field name (Account#) in the criterion range, is entered
  3554.    exactly as it is in both the database, and the summary section.
  3555.  
  3556.  
  3557.    =============================================
  3558.                 Summary Section
  3559.    =============================================
  3560.  
  3561.  
  3562.  
  3563.                                       Page 49
  3564.  
  3565.  
  3566.  
  3567.                              Amount
  3568.                Account#        1100
  3569.                     420        2900
  3570.                     430         900
  3571.                     625        -900
  3572.                     630       -1500
  3573.                     640        -100
  3574.                     655         -75
  3575.                     660        -125
  3576.  
  3577.    _____________________________________________
  3578.  
  3579.     Figure 6
  3580.  
  3581.  
  3582.    Don't forget about 1-2-3's STEP mode when trying to get these macros to
  3583.    work.  To use it, hold down the Alt key and tap the F1 key before
  3584.    executing the Alt-S macro.  You will see the STEP indicator come on at
  3585.    the bottom of your screen.  Now press Alt-S.  Nothing happens.  Begin
  3586.    pressing the space bar.  Note that each time you do, 1-2-3 processes one
  3587.    more keystroke in the Alt-S macro.  See your manual for more details if
  3588.    necessary.
  3589.  
  3590.  
  3591.  
  3592.  
  3593.  
  3594.  
  3595.  
  3596.  
  3597.  
  3598.  
  3599.  
  3600.  
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.  
  3608.  
  3609.  
  3610.  
  3611.  
  3612.  
  3613.  
  3614.  
  3615.  
  3616.  
  3617.  
  3618.  
  3619.  
  3620.  
  3621.  
  3622.  
  3623.  
  3624.  
  3625.  
  3626.  
  3627.  
  3628.  
  3629.                                       Page 50
  3630.  
  3631.  
  3632.  
  3633.  
  3634.    Appendix E
  3635.  
  3636.    Building The Cash Flow Summary Routines
  3637.  
  3638.  
  3639.    This article shows you how to build the formulas and macros that form
  3640.    the heart of the cash flow summary routines in The CashFlow Ledger.
  3641.  
  3642.    Wouldn't it be nice if the same data entered into a Cash Management
  3643.    system could be used as input to a General Ledger system.  This would
  3644.    allow you to enter the transactions you expect to occur in the cash
  3645.    management system to produce fairly accurate short term cash flow
  3646.    projections.  Then as time passes and the transactions actually occur,
  3647.    they could be transferred to the G/L system, thus eliminating the need
  3648.    to enter them twice.
  3649.  
  3650.    The CashFlow Ledger uses Lotus 1-2-3's date arithmatic features to take
  3651.    a database of proposed transactions and produce a cash flow forecast.
  3652.    Both future and historical transactions are maintained in the same
  3653.    database so there is no need to "transfer" them.  The two types of
  3654.    transactions are distinguished by the transaction date and number.
  3655.  
  3656.    The simplified version of The CashFlow Ledger this article steps you
  3657.    through draws upon a broad range of 1-2-3's capabilities including:
  3658.    Spreadsheet, Database, Graphics, Macros, and Date-Arithmatic.  As with
  3659.    The 123 Ledger, The CashFlow Ledger uses a combination of @DSUM formulas
  3660.    and the Data Table 1 command to do it's summarization.  This article
  3661.    should probably be avoided by beginning 1-2-3 users who are not willing
  3662.    to spend a few hours experimenting.
  3663.  
  3664.  
  3665.  
  3666.  
  3667.  
  3668.  
  3669.  
  3670.  
  3671.  
  3672.  
  3673.  
  3674.  
  3675.  
  3676.  
  3677.  
  3678.  
  3679.  
  3680.  
  3681.  
  3682.  
  3683.  
  3684.  
  3685.  
  3686.  
  3687.  
  3688.  
  3689.  
  3690.  
  3691.  
  3692.  
  3693.  
  3694.  
  3695.                                       Page 51
  3696.  
  3697.  
  3698.  
  3699.  
  3700.  
  3701.  
  3702.  
  3703.  
  3704.  
  3705.  
  3706.  
  3707.    Overview
  3708.  
  3709.    The application you are going to build has the following layout:
  3710.  
  3711.  
  3712.          _____________
  3713.         |             |
  3714.         |  Macros &   |
  3715.         |  Variables  |
  3716.         |_____________|
  3717.         |             |
  3718.         | Cash Flow   |
  3719.         |  Summary    |
  3720.         |_____________|
  3721.         |             |
  3722.         | Transaction |
  3723.         |  Database   |
  3724.         |_____________|
  3725.  
  3726.  
  3727.       _______________________________
  3728.  
  3729.       Figure A
  3730.  
  3731.  
  3732.    You will begin by setting up a sample database of future cash
  3733.    transactions, with the help of a data entry macro.  You will then go
  3734.    through the steps necessary to produce a cash flow projection from this
  3735.    database including a couple graphs.  After you have done these things
  3736.    once manually, you will be shown how to automate the process with
  3737.    macros, and thus maximize the what-if graphics capabilities of the
  3738.    application.
  3739.  
  3740.    Make sure you are starting with a blank worksheet by entering the
  3741.    /Worksheet Erase Yes command.
  3742.  
  3743.    Adjust the widths of the columns using the /Worksheet Column-Width Set
  3744.    command, as follows:
  3745.  
  3746.  
  3747.            Column      Width
  3748.            ------      -----
  3749.              A            5
  3750.              B           11
  3751.              C            9
  3752.              D           25
  3753.              E           11
  3754.              F           11
  3755.  
  3756.  
  3757.  
  3758.    The Database
  3759.  
  3760.  
  3761.                                       Page 52
  3762.  
  3763.  
  3764.  
  3765.  
  3766.    Assume you are in a position where you need to do a daily cash flow
  3767.    projection for the month of June.  Figure B contains a listing of the
  3768.    cash related transactions you expect to take to place during this month.
  3769.    The ****'s in the Transact# column will be replaced by the actual
  3770.    transaction numbers as they actually occur.
  3771.  
  3772.  
  3773.    =================================================================
  3774.                          Transaction Database
  3775.    =================================================================
  3776.  
  3777.         Date    Transact#     Description       Account#     Amount
  3778.       01-Jun-85   ****   Supplies                    630    (500.00)
  3779.       03-Jun-85   ****   Phone                       640    (100.00)
  3780.       05-Jun-85   ****   Wages                       625    (600.00)
  3781.       05-Jun-85   ****   Supplies                    630     (50.00)
  3782.       05-Jun-85   ****   Interest                    655     (75.00)
  3783.       15-Jun-85   ****   Sales                       420   1,700.00
  3784.       22-Jun-85   ****   Misc.                       660    (125.00)
  3785.       22-Jun-85   ****   Sales                       420   1,800.00
  3786.       22-Jun-85   ****   Utilities                   430    (150.00)
  3787.       25-Jun-85   ****   Rent                        630    (400.00)
  3788.       30-Jun-85   ****   Sales                       420   1,100.00
  3789.  
  3790.     _______________________________________________________________
  3791.  
  3792.      Figure B - Transaction Database.
  3793.  
  3794.  
  3795.  
  3796.    You can begin setting up this database by entering the repeating label,
  3797.    \= in cells A78 through F78, and A80 through F80.  Then enter the label
  3798.    'Transaction Database in cell D79, and the field names in the following
  3799.    cells as indicated:
  3800.  
  3801.               B82: ^Date
  3802.               C82: 'Transact#
  3803.               D82: ^Description
  3804.               E82: "Account#
  3805.               F82: "Amount
  3806.  
  3807.  
  3808.    The following macro can be used to help speed up transaction entry.  The
  3809.    first step to setting it up is to enter the following labels in the
  3810.    cells indicated:
  3811.  
  3812.  
  3813.                A3: '\A
  3814.                B3: '@DATE(85,6,{?}){calc}~
  3815.                B4: '/rfd~~{right}
  3816.                B5: '{?}{right}
  3817.                B6: '{?}{right}
  3818.                B7: '{?}{right}
  3819.                B8: '{?}~/rf,2~~
  3820.                B9: '{down}{left}{left}{left}{left}
  3821.               B10: '/xg\A~
  3822.  
  3823.  
  3824.    The next step is to assign the range name \A to cell B3 with the
  3825.  
  3826.  
  3827.                                       Page 53
  3828.  
  3829.  
  3830.  
  3831.    command:
  3832.  
  3833.         /Range Name Create <\A> {Enter} <B3> {Enter}
  3834.  
  3835.    You can now to begin entering transactions by moving the cell pointer to
  3836.    B83, holding down the Alt key, and tapping the A key.  To enter the
  3837.    date, all you have to do is type in the day number and press enter.  The
  3838.    macro in cell B3 enters the rest of the @DATE formula necessary to
  3839.    calculate the 1-2-3 date, and converts the formula to a number by
  3840.    pressing the CALC key.
  3841.  
  3842.    The macro in cell B4 formats the cell to display the number as a date
  3843.    and then moves you on to the Transact# column.
  3844.  
  3845.    The macros in cells B5, B6, and B7 simply pause until you press ENTER,
  3846.    and then move right one cell.  For purposes of this article, the
  3847.    Transact# and Description information need not be entered.  They were
  3848.    included only for illustration purposes.  You can simply press the ENTER
  3849.    key to skip over these items while entering the transactions if you
  3850.    like.
  3851.  
  3852.    B8 pauses for input, enters the number in the cell, and formats it (,)
  3853.    with 2 decimal places.
  3854.  
  3855.    B9 positions the cursor for entering the next transaction and B10 causes
  3856.    macro control to loop back up to cell B3.  You can break out of this
  3857.    macro at any time by holding down the "Ctrl" key and tapping the "Break"
  3858.    key.
  3859.  
  3860.    After entering the transactions, assign this database the named range DB
  3861.    with the following command:
  3862.  
  3863.        /Range Name Create <DB> {Enter} <B82..F93> {Enter}
  3864.  
  3865.  
  3866.    The Cash Flow Projection
  3867.  
  3868.    You are now ready to set up and enter the Data Table 1 command that will
  3869.    tell us the daily cash flow and daily cash balances resulting from these
  3870.    transactions.  The first thing you need to do is set up the Cash Flow
  3871.    Projection area as shown in Figure C.
  3872.  
  3873.  
  3874.    ===============================================================
  3875.                          Cash Flow Projection
  3876.    ===============================================================
  3877.  
  3878.                   Day             CashFlow    Balance
  3879.  
  3880.                    1
  3881.                    2
  3882.                    3
  3883.                    4
  3884.                    5
  3885.                    6
  3886.                    7
  3887.                    8
  3888.                    9
  3889.                   10
  3890.                   11
  3891.  
  3892.  
  3893.                                       Page 54
  3894.  
  3895.  
  3896.  
  3897.                   12
  3898.                   13
  3899.                   14
  3900.                   15
  3901.                   16
  3902.                   17
  3903.                   18
  3904.                   19
  3905.                   20
  3906.                   21
  3907.                   22
  3908.                   23
  3909.                   24
  3910.                   25
  3911.                   26
  3912.                   27
  3913.                   28
  3914.                   29
  3915.                   30
  3916.  
  3917.     _____________________________________________________________
  3918.  
  3919.      Figure C - Cash Flow Projection Workarea.
  3920.  
  3921.  
  3922.    Begin setting up this section by entering the repeating label, \= in
  3923.    cells A37 through F37, and A39 through F39.  Then enter the following
  3924.    labels in the cells indicated:
  3925.  
  3926.               D38: 'Cash Flow Projection
  3927.               C41: "Day
  3928.               D41: "CashFlow
  3929.               E41: "Balance
  3930.  
  3931.    To list the days of the month in column C, enter the following command:
  3932.  
  3933.         /Data Fill <C43..C72> {Enter} <1> {Enter} {Enter} {Enter}
  3934.  
  3935.    Before entering the @DSUM formulas at the top of this table, you will
  3936.    need to set up some formulas and criteria.  Begin this step by entering
  3937.    the following labels in the cells indicated:
  3938.  
  3939.               C27: 'BegDate
  3940.               C28: 'EndDate
  3941.               C29: 'Year
  3942.               C30: 'Month
  3943.               C31: 'Day
  3944.               C32: 'BegBal
  3945.  
  3946.    These labels can then be used to assign range names to the adjacent
  3947.    cells with the following command:
  3948.  
  3949.         /Range Name Labels Right <C27..C32> {Enter}
  3950.  
  3951.    BegDate will be used to calculate the 1-2-3 numeric date for the first
  3952.    day of the month being forecast.  EndDate will be used to calculate the
  3953.    1-2-3 numeric date for various days throughout the month.  For purposes
  3954.    of this example, enter the following values for Year, Month, Day, and
  3955.    BegBal in the cells indicated below:
  3956.  
  3957.  
  3958.  
  3959.                                       Page 55
  3960.  
  3961.  
  3962.  
  3963.               D29:       85
  3964.               D30:        6
  3965.               D31:        1
  3966.               D32:     1000
  3967.  
  3968.    The formula you need to enter in cell D27 to calculate the BegDate is:
  3969.  
  3970.         @DATE(YEAR,MONTH,1)
  3971.  
  3972.    The number that appears (31199) when you enter this formula is the
  3973.    number of days from January 1, 1900 to June 1, 1985.
  3974.  
  3975.    The formula you need to enter in cell D28 for the EndDate is:
  3976.  
  3977.         @DATE(YEAR,MONTH,DAY)
  3978.  
  3979.    You may find it helpful to format these two cells with the following
  3980.    command:
  3981.  
  3982.         /Range Format Date 1 <D27..D28> {Enter}
  3983.  
  3984.    If entered correctly they both should read: 01-Jun-85
  3985.  
  3986.  
  3987.    The CashFlow @DSUM Formula
  3988.  
  3989.    What we need is a way to calculate the total of all transactions for a
  3990.    specific day of the month.  One way to do this is by setting up an @DSUM
  3991.    formula that tests each transaction date against some "other" date.  In
  3992.    our case, this "other" date will be EndDate, which is calculated by
  3993.    combining YEAR, MONTH, and DAY.
  3994.  
  3995.    First we need to set up a criterian section by entering the label ^Date
  3996.    in cell F27.  Assign this cell and the one below it the range name CRIT1
  3997.    with the following command:
  3998.  
  3999.         /Range Name Create <CRIT1> {Enter} <F27..F28> {Enter}
  4000.  
  4001.    Now move down to cell D42 and enter the following formula:
  4002.  
  4003.         @DSUM(DB,4,CRIT1)
  4004.  
  4005.    Remember that DB was the name we assigned to the database.  The 4 in
  4006.    this formula is referred to as the "Column Offset".  It tells 1-2-3 to
  4007.    add up the Amount column in the database.  This often confuses people
  4008.    since Amount is the 5th column in the database.  Just remember that when
  4009.    you are calculating a column offset, you start counting with 0 rather
  4010.    than 1.
  4011.  
  4012.    If you entered the formula correctly, it should show a value of 2600.
  4013.    This is the total of all transactions in the database.  Now we need to
  4014.    enter a formula in the criteria cell to "filter" out all transactions
  4015.    except those for a specific day.  This can be done by entering the
  4016.    following formula in cell F28:
  4017.  
  4018.         +B83=$ENDDATE
  4019.  
  4020.    Remember that one of the rules to properly setting up criterian formulas
  4021.    is that cell references to fields in the database must refer to the
  4022.    first record.  The "+B83" refers to the Date of the first record in the
  4023.  
  4024.  
  4025.                                       Page 56
  4026.  
  4027.  
  4028.  
  4029.    database.  The $ must be placed in front of ENDDATE to make the
  4030.    reference to that cell absolute.  This is necessary for the Data Table 1
  4031.    command to function properly.
  4032.  
  4033.    As soon as you enter this formula, the @DSUM formula should have
  4034.    recalculated to -500.  Because ENDDATE is currently June 1, the @DSUM
  4035.    formula is indicating the total of all transactions occuring on that
  4036.    date.  If you enter the number 5 in cell D31, ENDDATE will change to
  4037.    05-Jun-85, and the @DSUM formula will tell you the total of all
  4038.    transactions for that date.
  4039.  
  4040.    If the formula is not working correctly, make sure that you typed in the
  4041.    field name Date exactly as you typed it in the database.  To be sure of
  4042.    this, I normally use the Copy command to enter the criteria field names.
  4043.    Once it is working correctly, you may want to experiment with it a bit.
  4044.    However, I recomend you first save your work to disk.
  4045.  
  4046.    Each time you place a new day number in cell D31, the @DSUM formula
  4047.    tells you the total of the transactions for that day.  In a few moments,
  4048.    you will be entering a Data Table 1 command that takes the day numbers 1
  4049.    - 30 listed in column C, plugs them one by one into cell D31,
  4050.    recalculates the @DSUM formula, and places the result in column D.
  4051.    Before issuing this command, you need to set up the @DSUM formula to
  4052.    calculate the cash balance for each day as well.  I don't think many
  4053.    people realize that more than one formula can be used in the same Data
  4054.    Table 1 command.
  4055.  
  4056.  
  4057.    The Daily Balance @DSUM Formula
  4058.  
  4059.    Before entering the formula, we will need to set up the criterian
  4060.    section.  Begin this by entering the label ^Date in cell F30.  Assign
  4061.    the name CRIT2 to the range F30..F31 with the following command:
  4062.  
  4063.         /Range Name Create <CRIT2> {Enter} <F30..F31> {Enter}
  4064.  
  4065.    Now enter the following formula in cell E42:
  4066.  
  4067.         @DSUM(DB,4,CRIT2)+$BEGBAL
  4068.  
  4069.    This formula tells 1-2-3 to add up the Amounts of all transactions
  4070.    meeting the criterian at CRIT2, and add this total to the amount in the
  4071.    cell called BEGBAL.  Again, the reference to BEGBAL must be made
  4072.    absolute with the $, in order for the Data Table command to work
  4073.    correctly.  If entered correctly, the current value of this formula
  4074.    should be 3600 (2600+1000).
  4075.  
  4076.    To compute the cash balance for a specific day, we will need to add up
  4077.    all transactions from the first of the month (BEGDATE) to a specific day
  4078.    of the month (ENDDATE), and then add this total to the beginning balance
  4079.    (BEGBAL).  This can be accomplished by entering the following formula in
  4080.    cell F31:
  4081.  
  4082.         +B83>=$BEGDATE#AND#B83<=$ENDDATE
  4083.  
  4084.    Again, the dollar signs are required for the Data Table 1 command to
  4085.    work correctly when used in conjunction with an @DSUM formula.
  4086.  
  4087.    Enter the number 1 in cell D31, and the current value of the "Balance"
  4088.    @DSUM formula should switch to 500.  In other words, the cash balance at
  4089.  
  4090.  
  4091.                                       Page 57
  4092.  
  4093.  
  4094.  
  4095.    the end of the first day of June is expected to be 500.  To see what the
  4096.    cash balance is expected to be at the end of the 5th day, simply enter a
  4097.    5 in cell D31.  You may want to experiment with this one a bit also.
  4098.  
  4099.    When the Data Table command is issued, it will take the list of day
  4100.    numbers in column C, and plug them one at a time into cell D31.  Each
  4101.    time the "Balance" @DSUM formula will be recalculated and the values
  4102.    placed in column E.
  4103.  
  4104.  
  4105.    Entering the Data Table 1 Command
  4106.  
  4107.    I recomend that you save you work to disk one last time before entering
  4108.    the following command:
  4109.  
  4110.         /Data Table 1 <C42..E72> {Enter} <D31> {Enter}
  4111.  
  4112.    In a moment or two, you should see the table filled in with June's
  4113.    projected daily cash flow and daily balance data as shown in Figure D.
  4114.  
  4115.  
  4116.    =============================================================
  4117.                        Cash Flow Projection
  4118.    =============================================================
  4119.  
  4120.                   Day            CashFlow    Balance
  4121.                                      -725       -325
  4122.                    1                 -500        500
  4123.                    2                    0        500
  4124.                    3                 -100        400
  4125.                    4                    0        400
  4126.                    5                 -725       -325
  4127.                    6                    0       -325
  4128.                    7                    0       -325
  4129.                    8                    0       -325
  4130.                    9                    0       -325
  4131.                   10                    0       -325
  4132.                   11                    0       -325
  4133.                   12                    0       -325
  4134.                   13                    0       -325
  4135.                   14                    0       -325
  4136.                   15                 1700       1375
  4137.                   16                    0       1375
  4138.                   17                    0       1375
  4139.                   18                    0       1375
  4140.                   19                    0       1375
  4141.                   20                    0       1375
  4142.                   21                    0       1375
  4143.                   22                 1525       2900
  4144.                   23                    0       2900
  4145.                   24                    0       2900
  4146.                   25                 -400       2500
  4147.                   26                    0       2500
  4148.                   27                    0       2500
  4149.                   28                    0       2500
  4150.                   29                    0       2500
  4151.                   30                 1100       3600
  4152.  
  4153.     _____________________________________________________________
  4154.  
  4155.  
  4156.  
  4157.                                       Page 58
  4158.  
  4159.  
  4160.  
  4161.      Figure D - June '85 Cash Flow Projection.
  4162.  
  4163.  
  4164.    Graphing the Data
  4165.  
  4166.    The format of this data lends itself nicely to graphic analysis.  The
  4167.    line graph of the daily cash flow shown in Figure E can be produced by
  4168.    entering the following commands:
  4169.  
  4170.         /Graph X <C43..C72> {Enter}
  4171.  
  4172.                A <D43..D72> {Enter}
  4173.  
  4174.                Options Format Graph Lines Quit
  4175.  
  4176.                        Titles First <Daily Cash Flow> {Enter}
  4177.  
  4178.                        Scale Skip <3> {Enter}
  4179.  
  4180.                        Quit
  4181.  
  4182.                 View
  4183.  
  4184.                 Quit
  4185.  
  4186.    The Options Scale Skip command was used to tell 1-2-3 to display every
  4187.    third item in the X range.
  4188.  
  4189.    Another useful graph that can be produced from the above Cash Flow
  4190.    Projection is a line graph of the daily balance.  Before defining this
  4191.    graph however, you should enter the following commands to save the above
  4192.    graph specifications for future use:
  4193.  
  4194.         /Graph Name Create <CASHFLOW> {Enter} Quit
  4195.  
  4196.    This command adds all of the above graph specifications into a
  4197.    "catelog".  This catelog allows us to create new graphs and still be
  4198.    able to recall the CASHFLOW graph specifications with the Graph Name Use
  4199.    command.
  4200.  
  4201.    The following commands can now be entered to produce the Daily Balance
  4202.    graph shown in Figure F:
  4203.  
  4204.         /Graph A <E43..E72> {Enter}
  4205.  
  4206.                Options Titles First <Daily Balance> {Enter}
  4207.  
  4208.                        Quit
  4209.  
  4210.                View
  4211.  
  4212.                Quit
  4213.  
  4214.    You should also add these graph specifications into the graph "catelog"
  4215.    referred to above under the name BALANCE with the following command:
  4216.  
  4217.         /Graph Name Create <BALANCE> {Enter} Quit
  4218.  
  4219.  
  4220.    Automating all this with Macros
  4221.  
  4222.  
  4223.                                       Page 59
  4224.  
  4225.  
  4226.  
  4227.  
  4228.    The "what-if" graphics capabilities of this application can be greatly
  4229.    increased by reducing the process of updating the Cash Flow Projection
  4230.    to a single keystroke.  With such a macro, you could make slight changes
  4231.    to the transaction database and see the resulting effect on cash flow by
  4232.    pressing just one key.
  4233.  
  4234.    Before setting up this macro, there are two more range names you will
  4235.    need to define.  Assign the name CASHFLOW to the top of the Cash Flow
  4236.    Projection area with the command:
  4237.  
  4238.         /Range Name Create <CASHFLOW> {Enter} <A37> {Enter}
  4239.  
  4240.    Next you will need to assign the name DATETABLE to the area used by the
  4241.    Data Table 1 command.  This can be done by entering the following
  4242.    command:
  4243.  
  4244.         /Range Name Create <DATETABLE> {Enter} <C42..E72> {Enter}
  4245.  
  4246.    You are now ready to begin setting up the macro by entering the
  4247.    following labels in the cells indicated:
  4248.  
  4249.               A14: '\G
  4250.               B14: '{goto}DB~
  4251.               B15: '/rncDB~{esc}.{end}{right}{end}{down}~
  4252.               B16: '{goto}CASHFLOW~
  4253.               B17: '/dtr/dt1DATETABLE~DAY~
  4254.               B18: '/gnuBALANCE~q
  4255.  
  4256.    Assign cell B14 the name \G with the following command:
  4257.  
  4258.         /Range Name Create <\G> {Enter} <B14> {Enter}
  4259.  
  4260.    When executed, this macro moves the cell pointer to the top of the
  4261.    database.  Then the macro in cell B15 recreates the named range DB to
  4262.    include any new transactions that have been entered since the last time
  4263.    the macro was executed.  Note that the use of the {end} key in this
  4264.    macro makes it necessary that you do not skip any rows while entering
  4265.    transactions in the database.
  4266.  
  4267.    After "renaming" the database, the macro in cell B16 moves the cell
  4268.    pointer to the top of the Cash Flow Projection area.
  4269.  
  4270.    The macro in cell B17 begins by resetting all Data Table specifications.
  4271.    This is done simply to speed up macro execution a bit.  The macro then
  4272.    goes on to issue the Data Table 1 command that will compute the daily
  4273.    cash flow and balance amounts.
  4274.  
  4275.    Finally, the macro in B18 issues the Graph Name Use command to call up
  4276.    the Daily Balance graph specifications defined earlier.
  4277.  
  4278.    Note that none of these macros contain any specific cell references such
  4279.    as "A38".  In all cases, range names were assigned to the cells and then
  4280.    used in the macros.  If you don't already do this, I would like to
  4281.    emphasize again, that the benefits realized from sticking to this habit
  4282.    religiously have been substantial.
  4283.  
  4284.    Before changing the transaction database, you may want to save your work
  4285.    to disk, and then give the macro a try by pressing Alt-G.  If the macros
  4286.    are working correctly the Daily Balance Graph should be displayed
  4287.  
  4288.  
  4289.                                       Page 60
  4290.  
  4291.  
  4292.  
  4293.    exactly as it was the first time.
  4294.  
  4295.    If not, you should verify that the range names are defined as indicated
  4296.    in Figure G.
  4297.  
  4298.    ==================================================
  4299.           The Cash Flow Ledger Range Names
  4300.    ==================================================
  4301.  
  4302.                    BEGBAL     D32
  4303.                    BEGDATE    D27
  4304.                    CASHFLOW   A37
  4305.                    CRIT1      F27..F28
  4306.                    CRIT2      F30..F31
  4307.                    DATETABLE  C42..E72
  4308.                    DAY        D31
  4309.                    DB         B82..F93
  4310.                    ENDDATE    D28
  4311.                    MONTH      D30
  4312.                    YEAR       D29
  4313.                    \A         B3
  4314.                    \G         B14
  4315.    __________________________________________________
  4316.  
  4317.    Figure G - CashFlow Ledger Range Names.
  4318.  
  4319.  
  4320.    Let's see if we can't do something about that negative cash flow during
  4321.    the early part of the month.  Move to cell B85 and enter the following
  4322.    command to insert a row:
  4323.  
  4324.         /Worksheet Insert Row {Enter}
  4325.  
  4326.    Press Alt-A and enter the following transaction:
  4327.  
  4328.         Date    Transact#     Description       Account#     Amount
  4329.       04-Jun-85   ****      NMI Sales                420     400.00
  4330.  
  4331.    The NMI stands for: Necessity is the Mother of Invention.  So much for
  4332.    my sense of humor.  After entering the transaction, you can stop macro
  4333.    execution by holding down the "Ctrl" key and tapping the "Break" key.
  4334.  
  4335.    Now press Alt-G to view the new projection.  The daily balance should no
  4336.    longer go below zero.
  4337.  
  4338.  
  4339.    Conclusion
  4340.  
  4341.    When I began snow skiing, the first thing I learned was how to fall.
  4342.    Once I overcame the fear of wiping out, it became easier to push myself
  4343.    and improve my skills.  When I began learning 1-2-3, one of the first
  4344.    things I learned was how to make it beep at me.  Soon thereafter I
  4345.    learned what it took to wipe things out to the point where I couldn't
  4346.    retrieve them.  Once I had these things down, it was much easier to
  4347.    experiment with new ways of doing things.  By removing the barriers to
  4348.    experimentation, I was able to develop applications such as this one
  4349.    through what I call, "What-if" learning.
  4350.  
  4351.  
  4352.  
  4353.  
  4354.  
  4355.                                       Page 61
  4356.  
  4357.  
  4358.  
  4359.  
  4360.    Appendix F
  4361.  
  4362.    Trouble Shooting
  4363.  
  4364.  
  4365.  
  4366.  
  4367.    In some cases, you will enter commands while within the "Add/Edit"
  4368.    option that screw up the key range name, "DB".  This is the "Achilles
  4369.    heel" of The CashFlow Ledger.  If, when you select the "Quit" option
  4370.    from the Modify submenu, you get an error message indicating the range
  4371.    name "DB" does not exist or is invalid, you will need to do the
  4372.    following:
  4373.  
  4374.            - Press the "Esc" key to clear the error.
  4375.  
  4376.            - Enter the command:
  4377.  
  4378.                 /Range Name Create <DB> <ENTER>
  4379.  
  4380.              When it asks for a range, use the direction keys to highlight
  4381.              the entire transaction database, including the field names
  4382.              (Date, Tran#, Descr, etc.).  The reason this is necessary is
  4383.              because when you select this "Quit" option, the macros go
  4384.              through the following steps:
  4385.  
  4386.                - Clear titles and move cell pointer to upper left corner of
  4387.                  the named range, "DB".  This should place the cell pointer
  4388.                  in cell containing the field name, "Date".
  4389.  
  4390.                - Deletes the range name, "DB".
  4391.  
  4392.                - Re-creates the range name, "DB", and assigns it a range
  4393.                  encompassing the entire transaction database.
  4394.  
  4395.  
  4396.    If you get the message,
  4397.  
  4398.         "Too many records for output"
  4399.  
  4400.    You will need to expand either the Query or Summary sections using the
  4401.    5.6 eXpand/Contract options located in the "Setup" submenu.
  4402.  
  4403.    Press Esc and then Alt-Z to return to main menu.
  4404.  
  4405.  
  4406.    If "Balance" in upper right corner of the transaction database screen
  4407.    displays an "ERR", use the "5.1 Formfix" option to correct.
  4408.  
  4409.  
  4410.    If you have entered a large number of transactions and recalculation is
  4411.    slowing down considerable, consider issuing the 1-2-3 command /Worksheet
  4412.    Global Recalculation Manual to turn off autorecalc.  This command must
  4413.    be entered while in READY mode (as indicated in the upper right corner
  4414.    of your screen.)
  4415.  
  4416.  
  4417.  
  4418.  
  4419.  
  4420.  
  4421.                                       Page 62
  4422.